【问题标题】:EF exception when trying to seed database尝试播种数据库时出现 EF 异常
【发布时间】:2014-12-27 18:35:42
【问题描述】:

我按照本教程创建了自己的应用程序:http://www.asp.net/mvc/overview/getting-started/getting-started-with-ef-using-mvc/creating-an-entity-framework-data-model-for-an-asp-net-mvc-application

当我开始调试并尝试打开玩家列表的选项卡时,它相当于这些教程中的学生选项卡,我得到了以下异常:

异常详细信息:“AzsPkInz.DAL.AZSContext”类型的对象无法转换为“System.Data.Entity.IDatabaseInitializer`1[AzsPkInz.DAL.AZSContext]”类型。

来源错误:

  1. 第 19 行:公共 ActionResult Index()
  2. 第 20 行:{
  3. 第 21 行:返回 View(db.Players.ToList());
  4. 第 22 行:}

这是AZSContext 来源:

public class AZSContext : DbContext
{
    public AZSContext() : base("AZSContext")
    {
    }

    public DbSet<Player> Players { get; set; }
    public DbSet<Training> Trainings { get; set; }
    public DbSet<Enrollment> Enrollments { get; set; }

    protected override void OnModelCreating(DbModelBuilder modelBuilder)
    {
        modelBuilder.Conventions.Remove<PluralizingTableNameConvention>();
    }
}

这是一个Player 模型:

public class Player
{
    public int ID { get; set; }
    public string FirstName { get; set; }
    public string LastName { get; set; }
    public DateTime BirthDate { get; set; }
    public DateTime JoinDate { get; set; }

    public virtual ICollection<Enrollment> Enrollemnts { get; set; }
}

知道我做错了什么吗?

【问题讨论】:

    标签: c# asp.net asp.net-mvc entity-framework


    【解决方案1】:

    确保在您的 Web 配置中 databaseInitializer 元素指向 IDatabaseInitializer(例如 SchoolInitializer不是 AZSContext

    <contexts>
      <context 
          type="ContosoUniversity.DAL.SchoolContext, ContosoUniversity">
        <databaseInitializer type="ContosoUniversity.DAL.SchoolInitializer, ContosoUniversity" />
      </context>
    </contexts>
    

    【讨论】:

    • 感谢您的回答,我在 databaseInitializer 中犯了错误。当我复制字符串时,我忘记将“AzsPkInz.DAL.AZSContext,AzsPkInz”从上下文类型更改为“AzsPkInz.DAL.AZSInitializer,AzsPkInz”。再次感谢,我浪费了几个小时来解决这个问题。 :)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-04-19
    • 1970-01-01
    • 1970-01-01
    • 2016-11-30
    • 1970-01-01
    • 1970-01-01
    • 2012-08-25
    相关资源
    最近更新 更多