我在dataGridview中显示此LINQ查询时遇到问题:
var result = from myrow in MydataTable.AsEnumerable()
where liste.Any(x => myrow.Field<string>("ID").ToUpper().Contains(x.ToUpper()))
select myrow;
MyGrigdView.DataSource = result.Tolist();
输出:
答案 0 :(得分:0)
问题在于gridview需要某种方式来访问有关哪些列有效绑定数据的信息。如果它有一个具有每列属性的对象,它可以工作,但你没有。如果整个集合实现了一个给定的接口,该接口解释了哪些列以及如何获取它们,那么它可以工作。 DataTable
实现了这样的接口,IEnumerable<DataRow>
没有。这里最简单的选项可能是将所有这些行放回DataTable
,以便绑定可以起作用。只需将ToList
替换为CopyToDataTable
(您可能需要添加相关的using
)。