簡體   English   中英

LINQ:將OrderBy添加到查詢

[英]LINQ: adding OrderBy to query

我正在完成我的大學項目的終點線,並且有點想完成查詢。 工作查詢如下所示:

var Report = from query in Document.Descendants("order")
                         group query by query.Element("seller").Value
                            into qGroup
                            select new Orders
                            {
                                Seller = qGroup.Key,
                                Quantity = qGroup.Sum(p => int.Parse(p.Element("quantity").Value)).ToString()
                            };

如果您可以向我展示如何按給定的“數量”以降序對結果進行排序,我將不勝感激。

謝謝!

var Report = (from query in Document.Descendants("order")
              group query by query.Element("seller").Value into qGroup
              select new Orders
              {
                  Seller = qGroup.Key,
                  Quantity = qGroup.Sum(p => int.Parse(p.Element("quantity").Value)).ToString()
              })
              .OrderByDescending(order => order.Quantity);

請這樣做:

var Report = (from query in Document.Descendants("order")
                            group query by query.Element("seller").Value
                            into qGroup
                            select new Orders
                            {
                                Seller = qGroup.Key,
                                Quantity = qGroup.Sum(p => int.Parse(p.Element("quantity").Value)).ToString()
                            }).OrderByDescending(x => x.Quantity);

HTH !!!!

(對LINQ Orderby降序查詢表示贊賞

Skippy和Andrei的答案有效,但您也可以寫成

var Report = from query in Document.Descendants("order")
             group query by query.Element("seller").Value
             into qGroup
             let qty = qGroup.Sum(p =>int.Parse(p.Element("quantity").Value)).ToString()
             orderby qty descending
             select new Orders
             {
                 Seller = qGroup.Key,
                 Quantity = qty
             };

如果您希望將其全部保留為一種語法。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM