SQL Server数据工具和Edmx

时间:2013-03-26 12:35:13

标签: entity-framework azure sql-server-data-tools

所以我们正在使用微软发布的新SSDT,非常酷的东西。我们将数据库项目保留在版本控制下,包含所有模式和用于开发的脱机数据库,稍后我们可以在SQL Azure数据库上进行部署。我们在开发中使用EF,所以我的问题是edmx适合的位置,如果我们直接从脱机数据库或在线SQL Azure更新edmx文件,那么最佳做法是什么?

2 个答案:

答案 0 :(得分:2)

我会说在你的情况下“生产数据库是事实”,所以我会从SQL Azure更新。真的没有正确答案。

顺便提一下,在SSDT的早期测试版中,有可能从EDMX到SSDT项目的参考,因此您的源代码成为事实(在我看来,这是更可取的)并且EDMX知道它始终在工作反对“真相”。不幸的是,他们放弃了这个功能,没有迹象表明它已经恢复了。

答案 1 :(得分:0)

要使EF正常工作,EDMX文件必须与要连接的数据库同步。在不了解您遵循的开发过程的情况下很难回答您的问题,但我想您会在生产中使用Sql Azure并针对本地数据库进行开发。因此,将在生产服务器上使用Edmx文件的一个副本。在开发环境中,您有一个edmx文件的“活动”副本,该文件在本地数据库更改时根据需要进行更改。当您准备好发布时,将应用程序(包括edmx文件)部署到使用Sql Azure的生产环境。 如果在开发环境中,您从SQL Azure更新edmx文件,那么如果Azure中的数据库架构与本地数据库的架构不同,那么内容将会中断或无法正常工作。