1
只要列名與映射匹配,nHibernate就可以輕鬆地對列名進行排序。所以,舉個例子:nHibernate上的非字段名列的AddOrder
Map(Function(x) x.CreatedOn)
criteria = criteria.AddOrder(New Global.NHibernate.Criterion.Order("CreatedOn", True))
是所有上面和舒適。
但是,我無法通過從對象推斷而不是直接映射的屬性來獲得正確的語法排序。我甚至不確定後者是否可能。考慮以下內容:
HasMany(Function(x) x.Shipments).Cascade.SaveUpdate()
Public Overridable ReadOnly Property Items() As IList(Of OrderItem)
Get
Return Shipments.SelectMany(Function(x) x.Items).ToList().AsReadOnly()
End Get
End Property
如何在這種情況下按Items.Count命令?嘗試objvious:
criteria = criteria.AddOrder(New Global.NHibernate.Criterion.Order("Items.Count", True))
導致了「無法解析屬性:項」錯誤
乾杯, 馬特