【发布时间】:2014-08-11 11:44:44
【问题描述】:
我必须过滤数据表中的特定列。
这是我的代码
string Groupname = txtGroup.Text;
DataTable dt1 = _objGetDataProcess.Getgroupname(Groupname);
在 dt1 我得到这样的表
这里我必须单独过滤项目列。
【问题讨论】:
标签: c# sql asp.net .net ado.net
我必须过滤数据表中的特定列。
这是我的代码
string Groupname = txtGroup.Text;
DataTable dt1 = _objGetDataProcess.Getgroupname(Groupname);
在 dt1 我得到这样的表
这里我必须单独过滤项目列。
【问题讨论】:
标签: c# sql asp.net .net ado.net
你可以使用Linq-To-DataTable:
var filteredRows = dt1.AsEnumerable()
.Where(row => row.Field<string>("Item") == itemTextToFilter);
...不区分大小写:
var filteredRows = dt1.AsEnumerable()
.Where(row => string.Equals(row.Field<string>("Item"), itemTextToFilter,StringComparison.CurrentCultureIgnoreCase));
如果您需要新的DataTable,请使用filteredRows.CopyToDataTable()。
如果您还想查找子字符串:
var filteredRows = dt1.AsEnumerable()
.Where(row => row.Field<string>("Item").Contains(itemTextToFilter));
...不区分大小写:
var filteredRows = dt1.AsEnumerable()
.Where(row => row.Field<string>("Item").IndexOf(itemTextToFilter, StringComparison.CurrentCultureIgnoreCase) >= 0);
【讨论】: