使用单一实体模型管理大项目

时间:2014-02-23 13:38:44

标签: .net asp.net-mvc git entity-framework

在我们的应用程序中,我们使用一个实体模型和数据库第一种方法,我们在服务器上有一个数据库模式。我们也使用git进行源代码管理。

当我们中的一些开发人员正在开发需要更改数据库并且经常发生这种情况的新功能时会出现问题,因此我们目前的解决方案如下:

  1. 从主分支创建一个新分支。
  2. 为测试创建一个新数据库,与我们实时使用的数据库相同。
  3. 完成将新功能传输到主分支并从新创建的分支中提取后,使用新的db更改获取新实体模型,并在执行发布时将sql应用于我们的实时数据库。
  4. 如果我们在某个新分支上停留太长时间会出现问题,因为我们正在大量转换分支。

    在那个时候我们的master分支发生了很大变化,而且还有它的实时数据库,所以我们的测试数据库结构与我们创建新分支的时间有很大不同,然后我们将新分支与主服务器合并出来了一。

    我们每次都成功完成,但很难管理它。我想知道是否有人知道更好的管理系统及其工作流程。

1 个答案:

答案 0 :(得分:1)

是的,这咬人。 .edmx文件经常遇到合并冲突,因为它存储域配置数据和设计器对象放置。 (前者应该是源代码控制的,后者应该在.user文件中。)添加侮辱伤害:文件设计为不可读(仅由工具管理),因此很容易失败时合并它。正是这个原因导致我们放弃了.edmx(“数据库优先”)方法并转向Code First。一些精心设计的单元测试验证实体类与表模式匹配,我们有一个更简单的工作流程。