【问题标题】:Using Entity Framework with two seperate database (Development and Production)使用实体框架和两个独立的数据库(开发和生产)
【发布时间】:2012-09-12 02:48:26
【问题描述】:

所以我在开发中使用 Entity Framework 5 进行了一段时间的项目,并决定需要将代码移至生产环境。

我的问题是这样做的好方法是什么?

我最初的想法是在我的项目中有两个 edmx 文件,然后在我的开发环境中注释掉生产连接字符串,反之亦然。但是,这似乎不可行,因为我不能在连接字符串中拥有两个同名的实体模型,从而导致在我的代码中更改模型“上下文”实例,这是没有意义的。

我的另一个想法只是修改开发数据库使用的模型的连接字符串以指向生产数据源(因为它们都具有相同的表结构)。但我不知道我是否会在这里破坏任何东西。

我在这里看过这篇文章,但没有帮助:Entity framework working with both production and development database

注意:我没有使用代码优先模式,而是从数据库生成模型,并且开发和生产数据库具有同步的数据库结构。

谢谢!

【问题讨论】:

    标签: c# asp.net-mvc entity-framework web-config connection-string


    【解决方案1】:

    您可以在 web.config 文件中使用转换来自动切换您引用的数据库。

    查看类似的答案:Web.Config Debug/Release

    【讨论】:

    • 是的,转换是要走的路,如果您有比普通 web.config 更奇特的东西,请查看 SlowCheetah,它对其他 XML 文件进行转换。
    【解决方案2】:

    您的 web.config 中仍然有连接字符串(是的,又大又长的实体连接字符串,但它就在那里)。只需确保生产部署中的连接字符串指向生产数据库服务器。我建议使用配置转换:

    http://msdn.microsoft.com/en-us/library/dd465326.aspx

    【讨论】:

      猜你喜欢
      • 2010-09-09
      • 2012-08-03
      • 1970-01-01
      • 2016-09-23
      • 1970-01-01
      • 1970-01-01
      • 2012-04-15
      • 1970-01-01
      相关资源
      最近更新 更多