将表添加到Entity Framework 6 Code First到现有数据库的最佳方法是什么?

时间:2014-10-09 14:04:35

标签: asp.net-mvc-5 entity-framework-6

我正在使用EF 6 Code First开发一个ASP.NET MVC 4.5项目到现有数据库。我想创建一些新的表与外键关系到我创建的dbcontext中的一个表。我在原始表中更改并添加了列,创建了几个迁移。该表中有实际数据。

我更喜欢在数据库中创建新表,但是不知道EF将如何为我生成模型。我可以自己编写模型,但是没有看到任何关于如何将它添加到EF生成的上下文类的文档。然后迁移将是不正常的。

所以我认为最好的办法是删除所有迁移,删除上下文类并删除迁移表。然后我可以从头开始初始迁移。我错过了一些问题吗?有没有更好的办法?

1 个答案:

答案 0 :(得分:0)

对于面临这种困境的其他人,我想通了。首先,我完成了所有的迁移,遵循100多个最高投票的答案:Reset Entity-Framework Migrations

其次,我在数据库中创建了我需要的新表和约束。

第三,我在我的解决方案中创建了一个新实体,并从数据库中生成了模型类。我将调用从旧实体更改为新实体。生成器覆盖了原始表的模型,但由于我在版本控制中有所有注释,因此粘贴它们是微不足道的。

如果需要,我可以再次启用迁移。

希望这有帮助。