[英]Entity Framework code first around existing database
我必须使用实体框架在新数据库或现有数据库中创建一些新实体,这些实体需要与某些旧表进行交互,我想知道这里最好的方法是什么。 我希望在迁移中使用Code First。
例如,假设我有一个现有的填充的Person
表,并且我需要创建一个Animal
表,其中包含一个PersonId
外键以引用现有的人。
据我所知,这是我的选择:
DBSet<Animal>
创建新的DBContext
(用于新的DB)。 在设置指向另一个数据库的外键时遇到问题。 使用DBSet<Animal>
创建一个新的DBContext
(以现有DB为目标),并在现有表周围创建某种POCO包装器。 我不确定这是否可行-我尝试了类似的方法,但是在应用迁移EF时尝试创建Person
表。 我假设这将映射到现有表,而不是创建一个新表:
[Table("Person")] public class Person {
首先将数据库与现有数据库一起使用,并在现有数据库中创建表,但随后我迷失了使用POCO和新实体进行迁移的机会。
我还有什么更好的选择,还是应该先使用数据库?
您可以使用EntityFramework反向POCO代码优先生成器 。
对现有数据库进行逆向工程,并生成Entity Framework Code First Poco类,配置映射和DbContext。 该发电机从一开始就被设计为可定制的,并且不像其他发电机那样固定和坚固。 继续播放.tt文件中的设置,这就是它的作用。
这是链接: EntityFramework反向POCO生成器
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.