我有以下类的结构:
SecurityLayer.Domain dll
SecurityLayer.Data dll
现在我构建了另一个使用上面两个包的产品。我有以下结构
问题是当我在MyProduct.Data项目上使用添加迁移时,EF生成迁移以从MyProduct.Domain和SecurityLayer.Domain <创建所有实体/ p>
我知道EF6在单个数据库中支持多个DbContext,但它对我不起作用。我们可以做些什么让 EF避免SecurityLayer.Domain中的实体吗?任何建议都非常感谢。 Tks很多!
答案 0 :(得分:1)
最简单的方法是创建初始迁移并从中删除不相关的位。由于EF的工作方式,后续迁移不会获取现有表。
迁移实际上将数据库的状态存储在名为__MigrationHistory
的表中。其中一列包含一个压缩的EDMX文件。您可以将内容提取为blob,将其另存为.zip
文件并亲自查看。每次迁移都使用它来确定自上次迁移以来发生了哪些变化。