У меня есть следующая ситуация в моей модели:Entity Framework - Отношения в таблице на тип наследования
public abstract class Person
{
public int PersonId { get; set; }
public int FullName { get; set; }
public int LanguageId { get; set; }
}
public class Student : Person
{
public int PersonId { get; set; }
.
.//some data
.
}
public class Teacher : Person
{
public int PersonId { get; set; }
.
.//some data
.
}
public class Language
{
public int LanguageId { get; set; }
public string Name { get; set; }
}
Я использовал TPT подход наследования, и все хорошо работать. Моя проблема: я хочу добавить класс языка, где у человека есть язык, а на языке есть много людей, поэтому это отношения «один ко многим». Но в подходе TPT свойства навигации не могут быть унаследованы, поэтому я не могу создать класс Language Object in Person, и ни отношения в классе сопоставления, я не хочу создавать свойство Navigation в классе Language, потому что в этой таблице много отношения в моей модели, и я не хочу удалять LanguageId в классе Person, потому что это общее свойство для всех подклассов.
Я исследовал в нескольких книгах, статьях и здесь, но я ничего не нашел. Во всех примерах объясняют ту же ситуацию (например, here), но с отношением в противоположном направлении.
Буду признателен за вашу помощь, спасибо.