C# EF6代码第一次从类库迁移会导致上/下空白
我正在把一些代码从EF5改写成EF6。作为该过程的一部分,我试图将数据库上下文逻辑拆分为一个类库。这以前是主项目的一部分,但现在运行C# EF6代码第一次从类库迁移会导致上/下空白,c#,asp.net-mvc,entity-framework,ef-code-first,C#,Asp.net Mvc,Entity Framework,Ef Code First,我正在把一些代码从EF5改写成EF6。作为该过程的一部分,我试图将数据库上下文逻辑拆分为一个类库。这以前是主项目的一部分,但现在运行addmigration时会产生空白的up/down方法 public class SLDBContext : DbContext { public SLDBContext() : base("name=SLApi") { System.Data.Entity.Database.SetInitializer(new C
addmigration
时会产生空白的up/down方法
public class SLDBContext : DbContext
{
public SLDBContext()
: base("name=SLApi")
{
System.Data.Entity.Database.SetInitializer(new CreateDatabaseIfNotExists<SLDBContext>());
}
public DbSet<Language> Languages { get; set; }
public DbSet<Template> Templates { get; set; }
public DbSet<TemplateFolder> TemplateFolders { get; set; }
public DbSet<Element> Elements { get; set; }
protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
base.OnModelCreating(modelBuilder);
//modelBuilder.Conventions.Remove<OneToManyCascadeDeleteConvention>();
}
}
我的seed方法是空的,但我希望它能为我创建一些空表。显然我遗漏了一些东西,但是什么呢?如果您的DbContext不再在启动项目中,您需要使用
-StartUpProjectName
开关,以便EF可以查看那里的配置文件中的连接字符串
add-migration MagicWombat -StartUpProjectName YourProject
如果在PM控制台中选择了类库作为默认类库,则:
add-migration MagicWombat -ProjectName YouClassLibrary -StartUpProjectName YourProject
在运行
addmigration
之前,请确保将PackageManager控制台中的默认项目下拉列表更改为类库。
add-migration MagicWombat -ProjectName YouClassLibrary -StartUpProjectName YourProject