C# 具有c的数据表组#

C# 具有c的数据表组#,c#,sql,linq,C#,Sql,Linq,我有一个名为“ConflictData”的数据表。 我想使用LINQ Select ID from ConflictData group by ID,DesignArticle,DesignNo,PatternCode having count(ID)>=2)) 我试试这个 var ID = from item in ConflictDatas.AsEnumerable() group item by new

我有一个名为“
ConflictData
”的数据表。 我想使用
LINQ

Select ID from ConflictData group by ID,DesignArticle,DesignNo,PatternCode having count(ID)>=2))
我试试这个

   var ID = from item in ConflictDatas.AsEnumerable()
                             group item by new
                 {
                     ID = item.ID,
                     DesignArticle = item.DesignArticle,
                     DesignNo = item.DesignNo,
                     PatternCode = item.PatternCode
                 } into g
                             where g.Count() > 2
                             select new
                              {
                                  ID = g.Key.ID
                              };
但它显示了错误:

错误2“System.Data.DataRow”不包含“ID”、“DesignArticle”、“DesignNo”、“PatternCode”的定义,并且找不到接受“System.Data.DataRow”类型的第一个参数的扩展方法“ID”、“DesignArticle”、“DesignNo”、“PatternCode”(是否缺少using指令或程序集引用?)

我很确定datatable“
ConflictDatas
”中有这些列

如何修改我的
LINQ
?谢谢。

使用
字段(“columnName”)
获取datatable行中给定列的单元格值,如下所示

var ID = from item in ConflictDatas.AsEnumerable()
                             group item by new
                 {
                     ID = item.Field<int>("ID"),
                     DesignArticle = item.Field<string>("DesignArticle"),
                     DesignNo = item.Field<string>("DesignNo"),
                     PatternCode = item.Field<string>("PatternCode")
                 } into g
                             where g.Count() > 2
                             select new
                              {
                                  ID = g.Key.ID
                              };
var ID=ConflictDatas.AsEnumerable()中的项
按新建项目分组
{
ID=项目字段(“ID”),
DesignArticle=项目字段(“DesignArticle”),
设计编号=项目字段(“设计编号”),
PatternCode=项目字段(“PatternCode”)
}进入g
其中g.Count()>2
选择新的
{
ID=g.Key.ID
};

您是否在使用System.Data时包含了
?您是否在查询内存中的
数据表
?我已经在使用System.Data时包含了。您是否在查询内存中的数据表-->是如果您有数据行,则使用item.Field(“ID”)