Bir listenin içeriğini filtrelemek ve sıralamak için bir işlev oluşturdum.Birden çok Linq ifadesini birleştirin
Biraz 'ısırık' gibi görünüyor, ancak Linq güçlü bir nokta değil. Fonksiyonun, performans perspektifi veya hatta estetik perspektiften akıcı hale getirilip getirilemeyeceğini merak ediyorum. - 'doğrudan' ajanları ve düzeni onlara olsun
var direct = agents
.Where(x => x.IsDirect)
.OrderByDescending(x => x.MinPrice);
aktif sıralar
var agents = XmlHelper
.Deserialise<AgentConfigs>("~/Pingtree.xml")
.Agents
.Where(x => x.IsActive == true);
// Öncelikle bir sınıf oluşturmak için
// XML Deserialise: Burada
kod // Ikinci - dolaylı aracıları bulun ve sipariş edinvar agency = agents
.Where(x => !x.IsDirect)
.OrderBy(x => x.Priority);
emir
Agents = direct.Concat(agency).ToList();
bu geliştirilebilir nasıl bir düşünce istinat birlikte 210
// Bolt 2 Alt listeler? Her iki bölme GroupBy
veya ToLookup
kullanabilirsiniz
Muhtemelen http://codereview.stackexchange.com/ adresine gidin http://codereview.stackexchange.com/ – HimBromBeere
Çözüm iyi çalışıyorsa ve nasıl daha iyi oluşturulabileceğine dair iyileştirme/gözden geçirme istiyorsanız, http://stackoverflow.com/review adresine gönderin. –
İlk olarak, Resharper ile işaretlenmiş olan aynı sayıları birden çok kez yineleyin. Bu, performans sorunlarına neden olabilir ve daha fazla sorgulama yapmadan önce temsilcilerinizde '.Listen’i çağırarak kolayca önlenebilir. – HimBromBeere