C# Database.SetInitializer(新的MigrateDatabaseToLatestVersion<;Context,Configuration>;());错误
我得到的错误实际上是一个编译器错误 CS0311:没有从…的隐式引用转换 我启用了包管理器中的迁移C# Database.SetInitializer(新的MigrateDatabaseToLatestVersion<;Context,Configuration>;());错误,c#,entity-framework,migration,C#,Entity Framework,Migration,我得到的错误实际上是一个编译器错误 CS0311:没有从…的隐式引用转换 我启用了包管理器中的迁移 public class Configuration : DbMigrationsConfiguration<PMDBContext> { public Configuration() { AutomaticMigrationsEnabled = true; AutomaticMigrationDataLossAllowed
public class Configuration : DbMigrationsConfiguration<PMDBContext>
{
public Configuration()
{
AutomaticMigrationsEnabled = true;
AutomaticMigrationDataLossAllowed = true;
ContextKey = "Context.DB.Context";
}
protected override void Seed(PMWeb.Models.PMDBContext context)
{
// This method will be called after migrating to the latest version.
// You can use the DbSet<T>.AddOrUpdate() helper extension method
// to avoid creating duplicate seed data. E.g.
//
// context.People.AddOrUpdate(
// p => p.FullName,
// new Person { FullName = "Andrew Peters" },
// new Person { FullName = "Brice Lambson" },
// new Person { FullName = "Rowan Miller" }
// );
//
}
}
公共类配置:dbmigrionsconfiguration
{
公共配置()
{
AutomaticMiggerationsEnabled=真;
AutomaticMigrationDataLossAllowed=true;
ContextKey=“Context.DB.Context”;
}
受保护的覆盖无效种子(PMWeb.Models.PMDBContext上下文)
{
//迁移到最新版本后将调用此方法。
//您可以使用DbSet.AddOrUpdate()助手扩展方法
//避免创建重复的种子数据。
//
//context.People.AddOrUpdate(
//p=>p.FullName,
//新人{FullName=“安德鲁·彼得斯”},
//新人{FullName=“Brice Lambson”},
//新人{FullName=“Rowan Miller”}
// );
//
}
}
本声明:
Database.SetInitializer(new MigrateDatabaseToLatestVersion<DbContext, Configuration>());
Database.SetInitializer(新的MigrateDatabaseToLatestVersion());
生成以下错误:
错误4类型“PMWeb.Migrations.Configuration”不能用作泛型类型或方法“System.Data.Entity.MigrateDatabaseToLatestVersion”中的类型参数“TMigrationsConfiguration”。没有从“PMWeb.Migrations.Configuration”到“System.Data.Entity.Migrations.dbmigrations.Configuration”的隐式引用转换。f:\dropbox\partymag\pmweb\models\pmdbcontext.cs 52 83 pmweb
顺便说一句,这之前工作正常,我不知道发生了什么变化。Database.SetInitializer(新的MigrateDatabaseToLatestVersion());
Database.SetInitializer(new MigrateDatabaseToLatestVersion<PMDBContext, Configuration>());
我应该给出我的上下文,而不是基本上下文类。愚蠢的我。:) 在另一个项目或这一特定项目中“之前工作良好”?请更正您的答案。代码行仍然是错误的:您正在使用DbContext类。是的,它太长了。我修复了它,谢谢您指出。@egaydın您在哪里添加
数据库.SetInitializer
命令?抱歉,时间太长了。但是如果我没有记错的话,我认为它在DBContext类中。