将 SQL 语句转换为具有 2 列且计数 (*) 不起作用的 Linq-to-SQL

本文关键字:Linq-to-SQL 不起作用 转换 语句 SQL | 更新日期: 2023-09-27 18:34:09

我有一个SQL语句,我需要将其转换为Linq-to-SQL。

有效的 SQL 语句是

Select 
    Comment, count(*) as counted 
from 
    [ESO].[ESO].[DOCCCOIssues] 
group by 
    comment

林克我有一个问题

var issueModel = new IssuesModel();
var query = (from c in DOCCCOIssues//.IssuesModels
            //group c by c.Comment into g
            select new
            {
                c.Comment,
                //Count = g.Count()
            });
  1. 我知道如何指定一堆字段
  2. 我确实注释掉了我看到的一个例子,有人通过计数做一个小组 - 不确定如何让它工作
  3. 我已经看到了 linq 查询 只得到select c).Count() ,这不是我想要的

将 SQL 语句转换为具有 2 列且计数 (*) 不起作用的 Linq-to-SQL

一旦你完成了分组,你就有一个列表,其中每个条目都是每个组中事物的IEnumerable,并且具有Key属性(你分组的事物,在本例中为 Comment)。请参阅 MSDN 上的序列中的元素分组。

因此,在您的结果中,您只需要将Key作为注释返回,然后返回该分组中的Count(),就像您已经尝试过的那样:

var query = (from c in DOCCCOIssues//.IssuesModels
            group c by c.Comment into g
            select new
            {
                Comment = g.Key,
                Count = g.Count()
            });

加工。网络小提琴