加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

c# – Entity Framework多个项目,首先进行代码迁移

发布时间:2020-12-15 07:51:50 所属栏目:百科 来源:网络整理
导读:我有一个名为“Core”的类库项目,它定义了具有公共类属性的CoreContext: public class CoreContext : DbContext{ public DbSetUser Users { get; set; } public DbSetRole Roles { get; set; } public DbSetUserContactInfo UserContactInfos { get; set; }
我有一个名为“Core”的类库项目,它定义了具有公共类属性的CoreContext:
public class CoreContext : DbContext
{
    public DbSet<User> Users { get; set; }
    public DbSet<Role> Roles { get; set; }
    public DbSet<UserContactInfo> UserContactInfos { get; set; }
    ... more common properties ...
}

然后我有多个项目引用“核心”项目并定义继承CoreContext的新上下文:

PROJECT1:

public class Project1Context : CoreContext
{
    public DbSet<Foo> Foos { get; set; } //object defined in Project1
}

项目2:

public class Project2Context : CoreContext
{
    public DbSet<Bar> Bars { get; set; } //object defined in Project2
}

当我在Project1Context中更改某些内容时,我在Project1中创建了一个新的迁移,这是好的,
但是,如果我在Core项目中更改某些内容,我们可以说将属性公司添加到UserContactInfo,我将不得不转到Project1和Project2并添加新的迁移,我将最终进行与Project1和Project2中的Core项目相关的迁移.

我的问题是:有没有办法可以在Core项目中保留CoreContext的迁移,并将Project1Context和Project2Context迁移到相应的项目,并自动执行与项目相关的所有迁移,因此当我启动Project1时,它将运行自己的迁移,CoreContext迁移?

作为澄清,我有Project1和Project2的单独数据库,最近更新了EF到版本6.

解决方法

你说的是不可能的.. 试想一下,如果您使用模型创建基本的CRUD视图,然后更改模型.你的问题很相似..

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读