C# ASP.NET MVC5实体框架应用程序中的单个上下文
正如我最后一个问题所示: 我需要使用单个数据库上下文,而我当前的设置是一个用于登录内容的上下文(在IdentityModel.cs中定义),另一个用于应用程序中所有其他数据库操作的上下文(外部定义)C# ASP.NET MVC5实体框架应用程序中的单个上下文,c#,asp.net,entity-framework,C#,Asp.net,Entity Framework,正如我最后一个问题所示: 我需要使用单个数据库上下文,而我当前的设置是一个用于登录内容的上下文(在IdentityModel.cs中定义),另一个用于应用程序中所有其他数据库操作的上下文(外部定义) 我将如何使用单个上下文?我不关心现有数据 您当然可以使用单一上下文 以下是我所做的: public class DataContext : IdentityDbContext<ApplicationUser> { public DataContext() :
我将如何使用单个上下文?我不关心现有数据 您当然可以使用单一上下文 以下是我所做的:
public class DataContext : IdentityDbContext<ApplicationUser>
{
public DataContext()
: base("DefaultConnection")
{
}
public IDbSet<Project> Projects { set; get; }
public IDbSet<Task> Tasks { set; get; }
}
公共类DataContext:IdentityDbContext
{
公共数据上下文()
:base(“默认连接”)
{
}
公共IDbSet项目{set;get;}
公共IDbSet任务{set;get;}
}
然后在帐户控制器中:
public class AccountController : Controller
{
public AccountController()
: this(new UserManager<ApplicationUser>(new UserStore<ApplicationUser>(new DataContext())))
{
}
公共类AccountController:控制器
{
公共账户控制员()
:此(新UserManager(新UserStore(新DataContext()))
{
}
创建新项目时:
public class ApplicationDbContext : IdentityDbContext<ApplicationUser>
{
public ApplicationDbContext()
: base("DefaultConnection")
{
}
}
public类ApplicationDbContext:IdentityDbContext
{
公共应用程序上下文()
:base(“默认连接”)
{
}
}
您得到的信息不多,您也可以使用它并添加您的数据库集。它有来自AccountController的引用。只需将用于ASP.NET标识的数据上下文分为子类。是的,根据DarthVader的回答,单个上下文肯定会使迁移更简单。