加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 资源网站 > 资源 > 正文

实体框架 – Azure Web角色中的实体框架DbContext

发布时间:2020-12-14 16:39:28 所属栏目:资源 来源:网络整理
导读:我正在将现有的Web应用程序(使用Entity Framework 5)迁移到Azure Web角色. 数据库连接字符串正从web.config移动到ServiceConfiguration.*.cscfg文件. 问题是在自动生成的Model.Context.cs文件中,我的实体类定义如下: public partial class MyEntities : DbC
我正在将现有的Web应用程序(使用Entity Framework 5)迁移到Azure Web角色.

数据库连接字符串正从web.config移动到ServiceConfiguration.*.cscfg文件.

问题是在自动生成的Model.Context.cs文件中,我的实体类定义如下:

public partial class MyEntities : DbContext
{
    public MyEntities()
        : base("name=MyEntities")
    { }

    // DbSets,etc
}

这将始终在web.config中查找MyEntities.如何覆盖此构造函数,以便我可以从ServiceConfiguration.*.cscfg文件传入连接字符串?

我可以从这个类派生出来,就像这样:

public class MyCloudEntities : MyEntities
{
    public MyCloudEntities()
        : base(CloudConfigurationManager.GetSetting("MyEntities"))
    { }
}

但是我必须在代码库中更改MyEntities的每个实例,并且它不会阻止开发人员在将来使用MyEntities.

解决方法

您可以更改Model.Context.tt文件,以便使用
CloudConfigurationManager.GetSetting("MyEntities")

代替

"name=MyEntities"

对于MyEntities

因此,每次重新创建上下文时,您将始终进行更改.在这种情况下,您无需更改任何其他内容.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读