У меня есть лицо, похожее на следующее:
public class Entity
{
public List<DateItem> PastDates { get; set; }
public List<DateItem> FutureDates { get; set; }
}
public class DateItem
{
public DateTime Date { get; set; }
/*
* Other Properties
* */
}
Где PastDates и FutureDates отображаются в один и тот же тип / таблицу. Я пытался найти способ, чтобы свойства прошлого и будущего автоматически отображались с помощью Nhibernate. Самый близкий, который я прибыл, был где пункт на отображении следующим образом
HasMany(x => x.PastDates)
.AsBag().Cascade
.AllDeleteOrphan()
.KeyColumnNames.Add("EventId").Where("Date < currentdate()")
.Inverse();
Где currentdate - UDF. Я не хочу иметь эти специфичные для базы данных функции, если смогу избежать этого, главным образом потому, что не могу затем протестировать свой DAL с SQLite, поскольку он не поддерживает функции или хранимые процедуры.
В данный момент я создаю прошлые и будущие коллекции с использованием Criteria и вручную добавляю их в DTO.
Кто-нибудь знает, как этого можно достичь без использования пользовательских функций?
Большое спасибо,