Dt
包含LOADERID 300
CompanyName India
var test = from t in Dt.AsEnumerable()
group t by t.Field<string>("LOADERID") into g
select new
{
cr = g.Key,
count = g.Count(),
};
迭代linq结果:
foreach(var temp in test) -> throwing error
{
//Code
}
无法转换类型为&system;的系统对象&#39;输入&#39; system.string&#39;
请说明我做错了什么。 感谢
答案 0 :(得分:1)
根据您的数据LOADERID = 300
,很明显您正在尝试将double
转换为string
。您必须使用正确的数据类型:
var test = from t in Dt.AsEnumerable()
group t by t.Field<double>("LOADERID") into g
select new
{
cr = g.Key,
count = g.Count(),
};
或者,如果数据类型在后续代码中不重要,则可以使用索引器而不是Field<T>
:
var test = from t in Dt.AsEnumerable()
group t by t["LOADERID"] into g
select new
{
cr = g.Key,
count = g.Count(),
};