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”)