Как мне сделать отношения многие ко многим в Entity Framework 4.3? - PullRequest
0 голосов
/ 26 марта 2012

У меня есть следующие классы:

public class Entity
{
    public long Id {get;set;}
}

public abstract class Base
{
    public long Id {get;set;}
    public abstract ICollection<Entity> Entities {get;set;}
}

public class Child : Base
{
    public override ICollection<Entity> Entities {get;set;}
}

Отображение:

modelBuilder.Entity<Child>().Map(
    m => {
            m.ToTable("Children");
            m.MapInheritedProperties();
         });
modelBuilder.Entity<Child>().HasMany(m => m.Entities).WithMany();

Я получаю следующее исключение:

The navigation property 'Entities' is not a declared property on type
'EventCriteria'. Verify that it has not been explicitly excluded from the model
and that it is a valid navigation property.

Что я делаю не так?

1 Ответ

0 голосов
/ 26 марта 2012

Вы отображаете наследование TPC (вы звоните MapInheritedProperties), и в этом случае коллекция Entities должна быть отображена в вашей сущности Base, а не в сущности Child.

...