NHibernate Query Over对实体中的IList进行排序

时间:2015-03-31 11:42:57

标签: c# nhibernate fluent-nhibernate queryover

我有两个实体

      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; }
        }

已进行一对多映射。
一种产品可能有很多价格计划

当我进行查询时

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

它给了我添加的价格表。
我希望它们在生效日期之前排序 请帮我查询。

1 个答案:

答案 0 :(得分:0)

映射中的

(例如FLuentNHibernate映射)

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

您应该在代码中执行有序插入操作,以便在代码中添加项目后不会破坏此已排序的合同。