将数据库拆分为多个dbContexts EF Core

时间:2019-06-29 19:01:29

标签: c# entity-framework .net-core

我有多个彼此不相关的项目,但是在某些数据库外观上,它们具有一些相似之处,例如身份验证系统的表。

我想为我的所有项目使用相同的基础项目,并在其中放置所有相似之处,因此不必为我的所有项目创建基础项目。

我正在使用EF Core和.Net Core。

我想知道是否有什么方法可以将项目中的同一张表拆分为一个项目,并在所有项目中使用它?还是一个好方法?

Project1 DbContext:

 public class P1Context : DbContext
 {
     public DbSet<Foo> Foo { get; set; }  
     public DBSet<User> User{ get; set; }
 }

Project2 DbContext:

public class P2Context : DbContext
{
    public DBSet<Bar> Bar { get; set; }
    public DBSet<User> User { get; set; }
}

我想做的是:

BaseProject DbContext:

 public class BaseContext : DbContext
 {
     public DBSet<User> User { get; set; }
 }

项目1 DbContext:

public class P1Context : DbContext
{
    public DbSet<Foo> Foo { get; set; }  
}

Project2 DbContext:

public class P2Context : DbContext
{
    public DBSet<Bar> Bar { get; set; }
}

0 个答案:

没有答案