我创建了一个公司 MVC4“模板”,其中包含基本的帮助程序、用户功能等,只是每个项目都需要的东西。
现在我试图分离Users
由 3 个部分组成的部分:控制器/模型/视图、业务层和数据层。
现在我遇到了一个问题,我将数据层部分取出并将其放在一个单独的项目中,该项目将成为一个私有 Nuget 包。
但是包不会知道,DbContext
因为它位于实际项目网站的 DataLayer 中。
该网站的 DbContext 当前如下所示:
public class DataContext : DbContext
{
....
public DbSet<Language> Languages { get; set; }
public DbSet<User> Users { get; set; }
....
public DbSet<Reservation> Reservations { get; set; }
....
}
Languages
和将Users
进入一个单独的项目/NuGet 包,Reservations
并将保留在网站上,因为它是特定于站点的。
Languages
和Users
表没有相互引用,但对和Reservations
都有引用。User
Language
这里有哪些选项可以保持完整的 Code-First 模型,包括迁移。我可以DbContext
为每个项目/NuGet 分别创建多个吗,代码优先迁移是否能够解决这个问题,或者有更好的方法吗?