2012-05-17 149 views
0

我创建了一个新的MVC3项目,并使用ADO.NET实体数据模型来映射出我现有的数据库。它效果很好。现在实体框架:现有数据库 - >数据模型 - >新数据库

,这是一个数据库,我不想做我的web应用程序的开发时的影响,所以我一直在寻找,现在的数据模型连接到本地数据库(没有选择一个还没有,建议表示欢迎。我在想SQL Server CE或MySQL)。

有没有人有关于如何做到这一点的任何想法?我很高兴将现有的连接字符串保存到我的实时数据库以及此开发数据库环境中。

+0

你不能只是改变web/app.config文件中的连接字符串来满足新的数据库吗? –

+0

您可以使用Web.Release.config和Web.Debug.config来覆盖web.config中的默认连接属性。我会查看我以前做过的事情,并添加一个答案 –

回答

1

你可以使用任何你想要的技术(虽然这将是很好的,让他们相似到生产的DB),然后有一个Web.Debug和Web.Release设置产生另一个匹配DB。

如果你看一下换出的配置,您的web.config文件中的连接字符串部分,你可以很容易地从发展交换到生产。

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

这提供了在Web.config文件转换报表的相关信息,但是从它的声音,你可以简单地交换你的web.config中的连接部分,并得到你想要的。

+0

+1标记,几乎与我要放的内容一致,但没有太多要添加的内容,所以你的站点:) –

+0

有趣的链接关于Web.Config中。我习惯于编写Windows服务 - 在网络空间中并不多,所以这为我填补了空白。 我希望能够利用EF内的一些工具自动重新生成用于“生产”环境创建的模型的类,但这应该足够了。 – Killnine

+0

我不清楚你在这里的含义:“从'生产'环境创建的模型中重新生成使用的类”。在你原来的文章中,它听起来像你正在做模型的第一次开发,但是这个声明听起来像是你在做数据库的第一次开发。也许你最初想做模型,部署到生产中,从那时起,总是对生产进行更改,实质上是转向数据库的第一种方法。这是可能的,如果这就是你的愿望(我之前已经这样做过,因为我相信我的能力比EF更能修改生产系统)。 – AaronLS

0

机器上或某个服务器上的现有数据库是?

如果这是你的机器上,只是将其备份,并恢复到不同的数据库;即如果您的数据库被称为XYZ,则将其备份并将其恢复到名为XYZ-Testing的数据库。然后您可以连接并使用XYZ测试而不影响XYZ。

如果现有数据库是某处的服务器上,最简单的解决方法是在你的机器上安装SQL Express,然后在备份服务器上的数据库,并在计算机上恢复。

这样做会让你的生活变得比尝试使用不同的数据库类型(SQL CE或MySQL)更容易。