【发布时间】:2015-04-29 16:18:22
【问题描述】:
我正在使用 MVC 5(Razor 视图)、Entity Framework 6(代码优先)、ASP.Net Identity 2.0 和 Web API 创建一个新应用程序。试图创建一个体面的解耦架构,我想在我的数据层中启用迁移,但我对迁移的工作原理有误解。这是我的基本解决方案架构:
MyApplication Solution
|-Domain Project
|-Entity1
|-Entity2
|-Entity3
|-Data Layer Project (References Domain Project)
|-DbContext (Inherits from IdentityDbContext)
|-Migrations Folder
|-Service Layer Project (Web API)
|-Business Layer Project
|-MVC Project
|-Views
如上图所示,数据层项目我已经通过在 Package Manager Console 中执行 Enable-Migrations 命令启用了迁移。问题是,它只为与身份相关的模型(AspNetUserRoles、AspNetUserLogins 等)编写脚本。迁移如何知道包含实体?我需要它来为我的域项目中的模型编写脚本,但不太清楚如何告诉 EF/Migrations 这样做。
更新:
根据请求,我的简单(通过新项目搭建的开箱即用)DbContext 类如下:
public class MyDbContext : IdentityDbContext<ApplicationUser>
{
public MyDbContext()
: base("DefaultConnection", throwIfV1Schema: false)
{
}
public static MyDbContext Create()
{
return new MyDbContext();
}
}
【问题讨论】:
-
你也可以显示你的 DataContext 类吗?
标签: asp.net-mvc asp.net-web-api entity-framework-6 entity-framework-migrations