3

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

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

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

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

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

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

谢谢!

4

2 回答 2

5

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

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

于 2012-09-11T18:48:03.117 回答
1

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

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

于 2012-09-11T18:48:26.443 回答