C# ASP.NET MVC5实体框架应用程序中的单个上下文

C# ASP.NET MVC5实体框架应用程序中的单个上下文,c#,asp.net,entity-framework,C#,Asp.net,Entity Framework,正如我最后一个问题所示: 我需要使用单个数据库上下文,而我当前的设置是一个用于登录内容的上下文(在IdentityModel.cs中定义),另一个用于应用程序中所有其他数据库操作的上下文(外部定义) 我将如何使用单个上下文?我不关心现有数据 您当然可以使用单一上下文 以下是我所做的: public class DataContext : IdentityDbContext<ApplicationUser> { public DataContext() :

正如我最后一个问题所示:

我需要使用单个数据库上下文,而我当前的设置是一个用于登录内容的上下文(在IdentityModel.cs中定义),另一个用于应用程序中所有其他数据库操作的上下文(外部定义)


我将如何使用单个上下文?我不关心现有数据

您当然可以使用单一上下文

以下是我所做的:

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的回答,单个上下文肯定会使迁移更简单。