В качестве примера у меня есть объект Person, и Person наследуется Мужчинами и Женщинами.Person содержит свойства, которыми обладают и мужчина, и женщина, а мужчина и женщина содержат определенные свойства.
Я хочу сохранить их в базе данных, используя Entity Framework 4.1 Code First.Итак, я сделал три модельных объекта
class Person {
int Id { get; set; }
string Name { get; set; }
string Weight { get; set; }
public virtual Woman Woman { get; set; }
public int WomanID { get; set; }
public virtual Man Man { get; set; }
public int ManID { get; set; }
}
class Woman {
int Id { get; set; }
bool IsPregnant { get; set; }
}
class Man {
int Id { get; set; }
bool ThinksWithDick { get; set; }
}
Итак, я Персона -> Мужчина / Женщина имеет отношение от 1 до 0..1.И я не знаю, как обеспечить это с помощью Code First.Я читал об отношениях 1: 1 ( здесь ), но это не то, что я ищу.
Возможно, это совершенно неправильный подход, но я уверен, что кто-то другойнаткнулся на то же самое.Можно ли это сделать, не прибегая к ручному применению ограничений в базе данных.