C# Linq查询问题

C# Linq查询问题,c#,asp.net,linq-to-sql,C#,Asp.net,Linq To Sql,我有一个linq查询,它将CustomerRecord表中的数据显示为。现在我对发票号和交易日期的数据进行分组,并按照交易日期的降序排列数据。这是我用来实现这一点的以下查询 (from result in db.CustomersRecords orderby result.Date_Of_Transaction.Value descending group result

我有一个linq查询,它将CustomerRecord表中的数据显示为。现在我对发票号和交易日期的数据进行分组,并按照交易日期的降序排列数据。这是我用来实现这一点的以下查询

(from result in db.CustomersRecords
                          orderby result.Date_Of_Transaction.Value descending
                          group result
                              by new { result.Invoice_Number, result.Date_Of_Transaction } into intermediateResult
                          select new { InvoiceNumber = intermediateResult.Key.Invoice_Number, DateOfTransaction = intermediateResult.Key.Date_Of_Transaction, TotalAmount = intermediateResult.Sum(result => result.Total_Amount) }).ToList();
但奇怪的是,我正在以升序获取数据,屏幕上显示了截图


我不明白里面发生了什么。

完成分组后,将订单移动到

(from result in db.CustomersRecords

                          group result
                              by new { result.Invoice_Number, result.Date_Of_Transaction } into intermediateResult
                          orderby intermediateResult.Key.Date_Of_Transaction descending
                          select new { InvoiceNumber = intermediateResult.Key.Invoice_Number, DateOfTransaction = intermediateResult.Key.Date_Of_Transaction, TotalAmount = intermediateResult.Sum(result => result.Total_Amount) }).ToList();

之所以如此,是因为group by result.Invoice_编号覆盖了以前的order by。由于发票编号通常以日期顺序给出,因此它似乎是以日期升序的形式给出的。

在分组后将订单移动到

(from result in db.CustomersRecords

                          group result
                              by new { result.Invoice_Number, result.Date_Of_Transaction } into intermediateResult
                          orderby intermediateResult.Key.Date_Of_Transaction descending
                          select new { InvoiceNumber = intermediateResult.Key.Invoice_Number, DateOfTransaction = intermediateResult.Key.Date_Of_Transaction, TotalAmount = intermediateResult.Sum(result => result.Total_Amount) }).ToList();

之所以如此,是因为group by result.Invoice_编号覆盖了以前的order by。由于发票号通常以日期顺序给出,因此它似乎是以日期升序的形式给出的。

当我按照指定移动orderby时,我无法获得intermediateResult.Date\u Of\u事务(我的意思是intellisense没有帮我做这件事)。即使我强制键入“'System.Linq.IGrouping'不包含'Date\u Of_Transaction'的定义,并且找不到接受'System.Linq.IGrouping'类型的第一个参数的扩展方法'Date\u Of_Transaction'(您是否缺少using指令或程序集引用?).这是我的错误,帮帮我out@user653622很抱歉,你需要添加
。我已经更新了我的答案你是个天才(根本不是废话!!)。我从下午就开始关注这个问题。所以差不多7个小时了。我正在清理解决方案,web应用程序,删除了.dbml类什么都没有!!你以任何方式完成了我的一天!!非常感谢你的即时反馈。非常感谢。祝你过得愉快!!当我按照指定移动orderby时,我无法获得intermediateResult.Date_Of_Transaction(我的意思是intellisense在这方面没有帮助)。即使我强制键入“'System.Linq.IGrouping'不包含'Date_Of_Transaction'的定义,也找不到接受'System.Linq.IGrouping'类型的第一个参数的扩展方法'Date_Of_Transaction'(是否缺少using指令或程序集引用?”。这是我遇到的错误。请帮助我out@user653622很抱歉,你需要添加
。我已经更新了我的答案你是个天才(根本不是废话!!)。我从下午就开始关注这个问题。所以差不多7个小时了。我正在清理解决方案,web应用程序,删除了.dbml类什么都没有!!你以任何方式完成了我的一天!!感谢你的即时反馈。非常感谢。祝你有一个愉快的一天!!