1

У меня есть два объектаNHibernate запросов За сортировать IList в Entity

 public class ProductEntity 
     { 
     public virtual Guid Id { get; set; } 
     public virtual string Name { get; set; } 
     public virtual IList<PriceScheduleEntity> PriceSchedules { get; set; } 
     } 
     public class PriceScheduleEntity 
     { 
     public virtual Guid Id { get; set; } 
     public virtual DateTime Date{get;set;} 
     public virtual ProductEntity Product { get; set; } 
     } 

один ко многим картографирования было сделано.
Один продукт может иметь много priceschedules

Когда я делаю запрос,

IList<ProductEntity> entityList = NHSession.QueryOver<ProductEntity>() 
      .Where(x => x.Name.IsLike("%" + matchString + "%")) 
      .OrderBy(x => x.Name).Asc.List(); 

Это дает мне priceschedules, как они были добавлены.
Я хочу, чтобы они отсортировали дату вступления в силу.
Пожалуйста, помогите мне с запросом.

+0

Вы пытаетесь сортировать 'ProductEntity' по' PriceScheduleEntity.Date'? –

+0

Да Могу ли я это сделать? –

+0

Поскольку у одного 'ProductEntity' есть много' PriceScheduleEntity', какой из них вы хотите отсортировать? –

ответ

0

в отображении (например FLuentNHibernate отображение)

HasMany(x => x.PriceSchedules).OrderBy(s => s.Date) 

вы должны сделать упорядоченные вставки в коде, чтобы он не сломается этим отсортированный контрактом после добавления элемента в коде.