Ради простоты позвольте мне упростить систему, над которой я работаю.В домене класс A наследуется от класса B, а B - от C.
A : B
{
a1, a2 //class members
}
B : C
{
b1
}
C
{
c1
}
Конфигурация для A выглядит следующим образом:
class CConfig : EntityTypeConfiguration<A>
{
public DocumentConfiguration()
{
Map(x => x.MapInheritedProperties()).ToTable("DOCUMENT");
}
}
Теперь, при выполнении кода выдается эта ошибка:
Свойство 'b1' не является объявленным свойством типа 'A'.Убедитесь, что свойство не было явно исключено из модели с помощью метода Ignore или аннотации данных NotMappedAttribute.Убедитесь, что это допустимое примитивное свойство.
Почему я получаю эту ошибку?
На http://social.msdn.microsoft.com/Forums/sv-SE/adodotnetentityframework/thread/f89d1df5-3b1f-413d-a077-d354abf4cca6 написано "... вы не можете использовать промежуточные звенья",Это правда?Если это так, то очень плохо, что EF вынуждает мой домен быть в определенном дизайне.Для меня это так же плохо, как поставить атрибуты, связанные с данными, поверх классов доменов.Или я что-то упустил?