繁体   English   中英

首先围绕现有数据库的实体框架代码

[英]Entity Framework code first around existing database

我必须使用实体框架在新数据库或现有数据库中创建一些新实体,这些实体需要与某些旧表进行交互,我想知道这里最好的方法是什么。 我希望在迁移中使用Code First。

例如,假设我有一个现有的填充的Person表,并且我需要创建一个Animal表,其中包含一个PersonId外键以引用现有的人。

据我所知,这是我的选择:

  • 使用代码优先迁移和POCO实体类,使用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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM