У меня в настоящее время есть модель бронирования, такая как:
public class RoomBooking : Entity, IBooking
{
public virtual Client Client { get; set; }
public virtual Address Address { get; set; }
public virtual IList<BookingPeriod> BookingPeriods{get;set;}...
public class BookingPeriod : Entity
{
public virtual IEnumerable<IBooking> Bookings { get; set; }
public virtual DateTime StartTime { get; set; }
public virtual DateTime EndTime { get; set; }...
Бронирования имеют много-много-много общего с BookingPeriods. Можно сделать три разных типа бронирования, и у каждого из них есть связанный тип.
Как лучше всего отобразить это для NHibernate? В настоящее время я использую S # arp, который использует функциональность AutoMapping Fluent NHibernate. Это приводит к ошибке в свойстве Bookings
, так как оно пытается сослаться на несопоставленный класс (IBooking
).