[英]C# LINQ filtering
我有这段代码
var tblGrouped = dtCSV.AsEnumerable()
.GroupBy(r => new
{
product_id = r.Field<String>("product_id"),
owner_org_id = r.Field<String>("owner_org_id"),
});
但我想添加其他列以进行过滤。 例如,基本上,如果course_type_id = 1。 dtCSV是填充course_type_id的源。 我尝试了以下操作,但没有成功:
var tblGrouped = dtCSV.AsEnumerable()
.GroupBy(r => new
{
product_id = r.Field<String>("product_id"),
owner_org_id = r.Field<String>("owner_org_id"),
course_type_id = "1",
});
如果我正确理解了您的要求,那么您想将course_type_id
为1的行course_type_id
?
var tblGrouped = dtCSV.AsEnumerable()
.Where(r => r.Field<String>("course_type_id") == "1")
.GroupBy(r => new
{
product_id = r.Field<String>("product_id"),
owner_org_id = r.Field<String>("owner_org_id"),
});
您需要先添加条件。 您可以使用.Where
来做到这一点:
var tblGrouped = dtCSV.AsEnumerable()
.Where(r => r.Field<String>("course_type_id") == "1")
.GroupBy(r => new
{
product_id = r.Field<String>("product_id"),
owner_org_id = r.Field<String>("owner_org_id"),
course_type_id = "1"
});
通过使用Where
语法Ex进行过滤。 .Where(a=>a.Field<String>("course_type_id") == "1")
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.