Linq to SQL Group by和Select中的和
技术问答
200 人阅读
|
0 人回复
|
2023-09-14
|
我需要将该SQL查询转换为Linq:& w; `" `3 V( U7 l9 S( L
SELECT SUM([ArticleAmount]) as amount ,[ArticleName]FROM [DB].[dbo].[OrderedArticle]group by articlenameorder by amount desc我 a.ArticleName收到错误消息,提示 ArticleName定义将丢失。
2 `6 b$ \7 P2 U1 ^var sells = orderedArt .GroupBy(a => a.ArticleName) .Select(a => new {Amount = a.Sum(b => b.ArticleAmount),Name=a.ArticleName}) .OrderByDescending(a=>a.Amount) .ToList();有人知道如何解决这个问题吗?7 v& U' f4 C( L' [; U) N! j* C/ L
谢谢你的帮助!( e9 k, {- V& s" [% `0 l: m e
- f# ]; ~# ^$ u$ W
解决方案:
# k# D* B6 q% w 你收到这个错误是因为分组没有返回,IEnumerable但IEnumerable[I]>9 W+ ^6 ~3 @7 o1 {' l$ B }
您需要更改代码以使用代码a.Key:$ L5 L. C ?$ N- A4 f
var sells = orderedArt .GroupBy(a => a.ArticleName) .Select(a => new { Amount = a.Sum(b => b.ArticleAmount),Name = a.Key}) .OrderByDescending(a => a.Amount) .ToList();;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
|
|
|
|
|