MVC/Code 第一:如何将更多的表添加到同一个数据库上下文中?
MVC/Code First: how to add more tables to the same db context?
我正在使用 VS 2013 附带的标准 MVC 模板。它有一个简洁的会员提供程序,使使用外部登录(Google、Facebook 等)变得轻而易举。还有关于如何扩展 IdentityUser
模型以添加新属性(例如出生日期)的教程。
我想将(我的应用程序的)更多表添加到已经编码的数据库上下文中,以便享受相同的代码优先迁移功能。我该怎么做?当前数据库上下文定义如下:
public class ApplicationDbContext : IdentityDbContext<ApplicationUser>
{
public ApplicationDbContext()
: base("DefaultConnection", throwIfV1Schema: false)
{
}
public static ApplicationDbContext Create()
{
return new ApplicationDbContext();
}
}
您正在使用 asp.net MVC5 identity 2,然后 ApplicationDbContext 已经存在于 IdentityModels.cs 中。因此您可以像这样添加 table (DbSet)。
public class ApplicationDbContext : IdentityDbContext<ApplicationUser>
{
public ApplicationDbContext()
: base("ApplicationDbContext", throwIfV1Schema: false)
{
}
public DbSet<Department> Departments { get; set; }
public DbSet<Student> Students { get; set; }
public static ApplicationDbContext Create()
{
return new ApplicationDbContext();
}
}
我正在使用 VS 2013 附带的标准 MVC 模板。它有一个简洁的会员提供程序,使使用外部登录(Google、Facebook 等)变得轻而易举。还有关于如何扩展 IdentityUser
模型以添加新属性(例如出生日期)的教程。
我想将(我的应用程序的)更多表添加到已经编码的数据库上下文中,以便享受相同的代码优先迁移功能。我该怎么做?当前数据库上下文定义如下:
public class ApplicationDbContext : IdentityDbContext<ApplicationUser>
{
public ApplicationDbContext()
: base("DefaultConnection", throwIfV1Schema: false)
{
}
public static ApplicationDbContext Create()
{
return new ApplicationDbContext();
}
}
您正在使用 asp.net MVC5 identity 2,然后 ApplicationDbContext 已经存在于 IdentityModels.cs 中。因此您可以像这样添加 table (DbSet)。
public class ApplicationDbContext : IdentityDbContext<ApplicationUser>
{
public ApplicationDbContext()
: base("ApplicationDbContext", throwIfV1Schema: false)
{
}
public DbSet<Department> Departments { get; set; }
public DbSet<Student> Students { get; set; }
public static ApplicationDbContext Create()
{
return new ApplicationDbContext();
}
}