数据表上的Linq查询
我有一个由存储过程填充的数据表。我正在使用groupby对DataTable进行查询,以便在ListView中实现ListView。(马特·贝塞思-) 我的代码隐藏中的查询:数据表上的Linq查询,linq,datatable,Linq,Datatable,我有一个由存储过程填充的数据表。我正在使用groupby对DataTable进行查询,以便在ListView中实现ListView。(马特·贝塞思-) 我的代码隐藏中的查询: var query = from c in dtTaskOrder.AsEnumerable() group c by c.Field<string>("CLIN") into g select new { Key = g.Key,
var query = from c in dtTaskOrder.AsEnumerable()
group c by c.Field<string>("CLIN") into g
select new
{
Key = g.Key,
Count = g.Count(),
Items = g
};
listv.DataSource = query.ToList();
listv.DataBind();
var query=来自dtTaskOrder.AsEnumerable()中的c
c组由c.Field(“CLIN”)改为g组
选择新的
{
键=g键,
Count=g.Count(),
项目=g
};
listv.DataSource=query.ToList();
listv.DataBind();
在我的aspx文件中,我尝试评估项目和后续列:
//列名
//列名
//最后一列名称
HttpException未经用户代码处理-当它尝试对上述列名求值时
我如何制定上述查询,以便“Items”是“Typed”的,并且我可以使用列名
谢谢您的帮助。您编写的评估(“SLIN”)是否可能是评估(“CLIN”)?
只是一个想法。否则,我以前使用过相同的代码,它也可以工作。如果不仅仅是打字错误,您可以使用
g
上的子查询来构建强类型对象的集合:
var query = from c in dtTaskOrder.AsEnumerable()
group c by c.Field("CLIN") into g
select new
{
Key = g.Key,
Count = g.Count(),
Items = from i in g
select new { CLIN = i.Field("CLIN"),
ACRN = i.Field("ACRN"),
Status = i.Field("Status") }
};
谢谢dahlbyk。g上的子查询完成了这项工作。我能够对列进行评估,因为它是关于列名的新信息。再次感谢。
var query = from c in dtTaskOrder.AsEnumerable()
group c by c.Field("CLIN") into g
select new
{
Key = g.Key,
Count = g.Count(),
Items = from i in g
select new { CLIN = i.Field("CLIN"),
ACRN = i.Field("ACRN"),
Status = i.Field("Status") }
};