在EF Core 2.1中是否可以在两列之间使用鉴别符?
在这种情况下,我有一个抽象基类型,该基类型可以分为另外两个抽象类型,每个抽象类型都有多个具体实现。目前,我正在努力寻找如何在EF Core中实现此功能。
我可以更改模型,但我不想让ORM决定我的域模型设计。
我正在使用一个无法更改的现有数据库,该行有两列,在这种情况下,它将是“性别”和“角色”。我不想创建男性或女性,只能创建MaleManager / FemaleManager / MaleSubordinate / FemaleSubordinate。
一个例子:
public abstract class Person
{
public abstract int Gender { get; }
public abstract int Role { get; }
}
public abstract class Male : Person
{
public override int Gender => 1;
}
public abstract class Female : Person
{
public override int Gender => 2;
}
public class MaleManager : Male
{
public override int Role => 1;
}
public class MaleSubordinate : Male
{
public override int Role => 2;
}
public class FemaleManager : Female
{
public override int Role => 1;
}
public class FemaleSubordinate : Female
{
public override int Role => 2;
}