Я думаю, вы ищете что-то вроде этого:
public class PersonApplicant : Applicant
{
public string Username { get; set; }
public string BirthCertificateNo { get; set; }
public string IssuePlace { get; set; }
}
public class LegalApplicant : Applicant
{
public string EconomicCode { get; set; }
public string RegisterNo { get; set; }
}
public class Applicant
{
public int ApplicantId { get; set; }
public int ApplicantType { get; set; }
public string Address { get; set; }
public string Description { get; set; }
public string IsDeleted { get; set; }
public string Name { get; set; }
public string NationalCode { get; set; }
}
Затем в вашем DbContext
сделайте что-то вроде этого:
protected override void OnModelCreating(ModelBuilder modelBuilder)
{
modelBuilder.Entity<Applicant>();
}
Это даст Applicants
таблица со столбцом «Дискриминатор» для определения того, какие столбцы должна использовать любая запись.
В настоящее время EF Core поддерживает только шаблон таблицы на иерархию (TPH). TPH использует одну таблицу для хранения данных для всех типов в иерархии, а столбец дискриминатора используется для определения того, какой тип представляет каждая строка.
Ссылка: Наследование