c# - 将 Entity Framework 与两个单独的数据库(开发和生产)一起使用

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

因此,我一直在开发一个使用 Entity Framework 5 的项目,我决定将代码移至生产环境。

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

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

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

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

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

谢谢!

最佳答案

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

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

关于c# - 将 Entity Framework 与两个单独的数据库(开发和生产)一起使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12375989/

相关文章:

c# - 如何在C#中使用正则表达式通过id获取html div元素的innertext

c# - WPF Datagrid 获取所有选中的行(不使用 WPF 绑定(bind))

java - 将 C# 密码学转换为 Java

c# - 你在哪里存储验证逻辑?

c# - EF DateTimes 与 SQL Server 中保存的值不匹配

c# - 有没有办法在不重复变量名的情况下对单个变量应用多个逻辑运算符?

c# - 使用 Pure Razor 时的动态 Web 控件

c# - 如何使用 asp.net 将 kafka 消息保存到文件中

asp.net-mvc - 由于存在未决的更改,因此无法更新数据库以匹配当前模型

c# - .Include() 与 .Load() 在 EntityFramework 中的表现