Entity Framework 4 CTP5 Наследование TPT не работает для глубокой иерархии?

У меня возникла проблема с сопоставлением немного более сложных отношений наследования с использованием API с первым кодом в CTP5. Когда у меня есть это:

Table A
--------
int ID (PK)

Table B
--------
int ID (PK)
varchar Something


public class A {
    public int ID { get; set; }
}

public class B : A {
    public string Something { get; set; }
}

... все работает нормально. Но когда я добавляю это:

Table C
-------
int ID (PK)
varchar SomethingElse

public class C : B {
    public string SomethingElse { get; set; }
}

... затем он выдает ошибку с «Недопустимым дискриминатором имени столбца», что означает, что EF сбивается с толку и думает, что я пытаюсь выполнить сопоставление TPH. Кто-нибудь еще видел это? Это известные проблемы в EF? Мне нужно сделать какое-то специальное отображение?

Заранее спасибо за помощь.


person Kurt Christensen    schedule 25.03.2011    source источник


Ответы (1)


Насколько мне известно, иерархии на нескольких уровнях сначала не поддерживаются в коде.

person Kralizek    schedule 26.03.2011