我一直在我的数据库上练习Code First概念。由于我使用的数据库比.NET代码开发更长,我倾向于总是考虑利用数据库的强大功能,因此我的标准实践始终是数据库优先,然后使用像EF这样的ORM来生成DAL的上下文
所以请原谅这是否是一个愚蠢的问题。我已经习惯使用代码迁移实用程序来创建我的主键和外键关系,定义主键等。很棒的学习经验但是对于某些任务我认为最好直接进入数据库并运行脚本。如创建检查约束,存储过程在代码中实现为函数等等。
所以我的问题是,如果我执行像在数据库中创建检查约束这样的任务,有没有办法将更改传播到代码第一模型?我知道update-migration命令会强制模型更改到数据库,因此我是这个方法的初学者我想知道如何让Code First接收数据库中的更改而不是推送更改。
我问,因为到目前为止我学到的所有内容似乎都强制执行“Code First”这个术语,就像你在这种模式下开始开发一样,如果需要你就不能颠倒逻辑。
这是对的还是我只是遗漏了什么?
此外,使用Code First和EF是否被认为是一种常见或合理的做法?似乎Code First提供了与EF相同的好处,因此它似乎是代码的冗余使用。