Я получил эту простую иерархию классов;
public class A
{
[Key]
public int Id { get; set; }
}
public class B : A
{
public string Name { get; set; }
}
public class C : A
{
public string Name { get; set; }
}
Использование TPH приведет к тому, что таблица будет выглядеть примерно так:
Таблица A, поля Id, Name, Name1, Discriminator.
Я хочу, чтобы свойства имен классов B и C отображались в одно и то же поле, т. Е. Name, используя эти сопоставления.
Property(x => x.Id)
.HasColumnName("Id");
Map<B>(m =>
{
m.Properties(p => new
{
Name = p.Name,
});
});
Map<C>(m =>
{
m.Properties(p => new
{
Name = p.Name,
});
});
Как я могу убедиться в том, что сопоставим с тем же столбцом для моего свойства подтипов (B и C) Name? Есть ли HasColumnName для использования с коллекцией Properties?