EF中DbContext如何使用自定义数据源,而不是使用app.config中的链接字符串

来源:互联网 发布:mac ter 识别当前路径 编辑:程序博客网 时间:2024/05/27 01:05


如题:

之前在EF使用时,一直纠结于APPCONFIG中的配置的连接字符串,不能使用动态链接字符串;


经过对比,DbContext的构造函数中有一个构造函数如下:

        //        // 摘要:        //     通过现有连接来连接到数据库以构造一个新的上下文实例。如果 contextOwnsConnection 是 false,则释放上下文时将不会释放该连接。        //        // 参数:        //   existingConnection:        //     要用于新的上下文的现有连接。        //        //   contextOwnsConnection:        //     如果设置为 true,则释放上下文时将释放该连接;否则调用方必须释放该连接。        [SuppressMessage("Microsoft.Usage", "CA2214:DoNotCallOverridableMethodsInConstructors")]        [SuppressMessage("Microsoft.Reliability", "CA2000:Dispose objects before losing scope")]        public DbContext(DbConnection existingConnection, bool contextOwnsConnection);

从该构造函数入手,每次创建一个新的链接,其中contextOwnsConnection参数是设置为 true,使用完之后释放即可。

具体实现如下:
        //您的上下文已配置为从您的应用程序的配置文件(App.config 或 Web.config)        //使用“LocalDb”连接字符串。默认情况下,此连接字符串针对您的 LocalDb 实例上的        //“com.InstrumentCar.Datas.LocalDb”数据库。        //         //如果您想要针对其他数据库和/或数据库提供程序,请在应用程序配置文件中修改“LocalDb”        //连接字符串。        public LocalDb()            : base(new SQLiteConnection(Config.Config.getDatabaseConnStr()),true/*"name=LocalDb"*/){}
在使用时,可按照下列方法使用:
using (LocalDb localdb = new LocalDb()){    ...}



阅读全文
0 0
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 本科错过了选导师该怎么办 本科导师威胁学生不让毕业怎么办 意向导师名额满了怎么办? 扔的瓶子被限制怎么办 左钝缘支起始部重度狭窄怎么办 吃了抑郁症药困怎么办 如果股票退市持股人怎么办 电信身份信息审核失败怎么办 打完肌肉针肿了怎么办 refa掉了一个球怎么办 左腿比右腿粗怎么办 产妇上火怎么办吃什么下火呢 哺乳期上火怎么办吃什么下火 前扣内衣有点紧怎么办 橱柜做了小10厘米怎么办 一个月宝宝体检胸围35怎么办 月经量少脸上长斑怎么办 下压100上压160怎么办 怎么办去台湾新的驻签 学生去韩国旅游签证怎么办 猪的眼睛赛肿了怎么办 纹眉没有修复霜怎么办 衣服搞到走珠露香水洗不掉怎么办 涂牙膏把脸烧伤怎么办 月经血排不出来怎么办 猫眼角膜掉了一块怎么办 腰酸痛直不起腰怎么办 白血病移植后复发了怎么办 斐讯k2红灯常亮怎么办 洗衣机把烟洗了怎么办 吸烟吸的恶心想吐怎么办 显示双方信息的明细怎么办 电脑关不了机了怎么办 xp系统关不了机怎么办 灯的开关闭不了怎么办 灯的开关按不动怎么办 灯开关按不动了怎么办 灯的开关摁不动怎么办 微信群500人满了怎么办 作业帮搜不到题目怎么办呢 金融社保卡密码忘了怎么办