保持数据库同步核心

时间:2018-06-07 12:41:18

标签: entity-framework-core entity-framework-core-migrations

我已阅读过多篇关于此的帖子,但还没有明确的答案。 我们正在全公司范围内转换到EF Core 2.0,一次一个项目。

挑战在于:

  1. 启动一个新项目,首先使用代码,迁移等创建数据库。
  2. 另一位程序员需要创建一个针对同一数据库的项目。
  3. 这个程序员可以使用Scaffold-DbContext并生成当前模型。
  4. 但是,需要一个新列,第二个程序员添加它。
  5. 现在......我们如何才能最好地更新其他项目? 是否存在检查和同步或显示模型与数据库之间不同步的内容?含义检查数据库是否有变化...而不是模型。

    如果这是最好的解决方案,我们不介意购买工具。

1 个答案:

答案 0 :(得分:0)

我们一直在成功使用的解决方案是Visual Studio中的数据库项目。

使用每个开发人员的解决方案中的项目,在本地对其进行更改。 然后,我们可以在VS中进行“架构比较”。

在过去的三周中,我们已经成功地在4个人中成功使用了此功能,几乎没有问题。

这甚至可以使我们的存储过程的版本和更改保持最新状态。 VSTS也可以很好地工作。

以下是我阅读的一些有助于我理解的帖子:

https://www.sqlchick.com/entries/2016/1/10/why-you-should-use-a-ssdt-database-project-for-your-data-warehouse

https://weblogs.asp.net/gunnarpeipman/using-visual-studio-database-projects-in-real-life

..并且该论坛有很多相关问题/答案: https://social.msdn.microsoft.com/Forums/sqlserver/en-us/home?forum=ssdt