У меня есть объекты в их собственных таблицах, используя EF Codefirst. Теперь я пытаюсь создать «архив» для измененных объектов, живущих в отдельных таблицах для каждого из этих объектов.EF Codefirst Как создать отдельную таблицу для производного класса?
Например:
public class Person
{
[Key]
public virtual Guid Id { get; set; }
[Required]
public string Name { get; set; }
}
public class Person_Archive : Person
{
[Key]
[Columnn(Order = 1)]
public override Guid Id { get; set; }
[Key]
[Columnn(Order = 2)]
public DateTime ChangedAt { get; set; }
public string ChangedBy { get; set; }
}
Когда я позволяю EF создать модель это НЕ включать свойства лица в Person_Archive :-(Даже если я добавлю:
modelBuilder.Entity<Person>().ToTable("Person");
modelBuilder.Entity<Person_Archiv>().ToTable("Person_Archiv");
EF еще не повторяет свойства производного класса.
У кого-нибудь есть идея, как этого достичь?
Спасибо! Andreas
проверить эту ссылку из, http://weblogs.asp.net/manavi/archive/2011/01/03/inheritance-mapping-strategies-with-entity-framework-code-first-ctp5-part -3-table-per-concrete-type-tpc-and-choose-strategy-guidelines.aspx – hazimdikenli
Большое спасибо! Это работает как шарм! – nttakr
Это очень помогло мне. Спасибо тон за этот ответ. –