मैं पुरानी शैली की क्वेरी CreateCriteria()
से QueryOver()
पर प्रतिक्रिया कर रहा हूं। क्वेरी परिणामों के क्रम में मेरी डब्ल्यूसीएफ सेवा string PropertyName
प्राप्त करती है। IQueryable
के लिए CreateCriteria()
- AddOrder()
के लिए मैं इस तरह के ऑर्डर करने के लिए डायनामिक LINQ का उपयोग करता हूं।प्रश्नोत्तरी प्रश्नोत्तरी। स्ट्रिंग्स संपत्ति नामों का उपयोग करके ऑर्डर करें।
IList<object[]> result =
GetSession()
.QueryOver(() => activity)
.JoinAlias(() => activity.ActivityLicense,() => license)
.Select(Projections.ProjectionList()
.Add(Projections.Count<Activity>(e => e.Id), "ActivityCount")
.Add(Projections.Group(() => license.SerialNumber), "SerialNumber")
.Add(Projections.Count<Activity>(e => e.MacAdress), "MacAddressCount")
.Add(Projections.Count<Activity>(e => e.IpAdress), "IpAddressCount")
)
.OrderByAlias("ActivityCount") // Compilation Error - I need such extension method
.List<object[]>();
स्ट्रिंग प्रॉपर्टी नामों के मामले में ऑर्डर करने के लिए कोई सुझाव कैसे करें?
पुनश्च: मैं Nhibernate को LINQ का उपयोग नहीं कर सकता है: LINQ to NHibernate - .GroupBy().Skip().Take() cause an exception
धन्यवाद!
धन्यवाद। क्या आईक्रिटिरिया को IQueryOver पर वापस करना संभव है? –
मुझे ऐसा नहीं लगता है, आप क्या कर सकते हैं एक IQueryOver एक्सटेंशन विधि में refactor है। मैं उदाहरण पोस्ट करूंगा ... – dotjoe