Миграция с NHibernate на Entity Framework 6

Кто-нибудь знает, есть ли способ сделать что-то вроде Nhibernate's ReferencesAny в EntityFramework?

Фон
Мне было поручено обновить приложение, которое использует NHibernate (в частности, версия 2.1.2.4000). Компания действительно предпочла бы пойти дальше с Entity Framework. В идеале мне не хотелось бы менять схему базы данных (иметь дело с администраторами баз данных), но у меня возникают проблемы с выяснением того, как сопоставить сущность, которая использует ReferencesAny к чему-то похожему в Entity Framework.

Моя карта Nhibernate

//this is in a Spectator Mapping class, which isn't related at all to the 
// Player, Judge, or Viewer
mapping.ReferencesAny(p => p.Owner)
  .EntityTypeColumn("owner")
  .EntityIdentifierColumn("owner_id")
  .AddMetaValue<Player>("player")
  .AddMetaValue<Judge>("judge")
  .AddMetaValue<Viewer>("viewer")
  .IdentityType<int>();

Player, Judge, а также Viewer все происходят от одного базового абстрактного класса Person но хранятся в базе данных как отдельные таблицы (при этом не существует таблицы для Person).

Я не смог выяснить, как настроить сопоставления в классах Entity Framework для правильного моделирования этих отношений.

У кого-нибудь есть мысли или я должен попытаться убедить власть имущих просто сохранить NHibernate?

0 ответов

Другие вопросы по тегам