0

エラーが発生しEntityType 'User' has no key defined. Define the key for this EntityTypeます。

モデル:

public abstract class KeyedEntityBase
{
    public int ID { get; private set; }
}

public class User : KeyedEntityBase
{
    public string UserName { get; private set; }
    public string EmailAddress { get; private set; }
}

環境:

public class LSBPortalContext : DbContext
{
    public LSBPortalContext()
        : base("LSBPortalDB")
    {
    }

    public DbSet<User> Users { get; set; }

    protected override void OnModelCreating(DbModelBuilder modelBuilder)
    {
        modelBuilder.Entity<User>().Map(m =>
        {
            m.MapInheritedProperties();
            m.ToTable("User");
        });

        base.OnModelCreating(modelBuilder);
    }
}
4

1 に答える 1

1

問題は、実際に KeyedEntityBase クラスをマップしていなかったことです。私がそれをしたら、それはすべて正常に機能しました。

于 2012-07-14T04:12:41.973 に答える