我正在尝试找到一种快速方法来在所有数据表列中查找字符串!
跟随不起作用,因为我想在所有列值中搜索。
string str = "%whatever%";
foreach (DataRow row in dataTable.Rows)
foreach (DataColumn col in row.ItemArray)
if (row[col].ToString() == str) return true;
您可以使用 LINQ。它不会更快,因为您仍然需要查看每个单元格,以防值不存在,但它将适合单行:
return dataTable
.Rows
.Cast<DataRow>()
.Any(r => r.ItemArray.Any(c => c.ToString().Contains("whatever")));
要搜索随机文本并返回包含至少一个不区分大小写匹配的单元格的行数组,请使用以下命令:
var text = "whatever";
return dataTable
.Rows
.Cast<DataRow>()
.Where(r => r.ItemArray.Any(
c => c.ToString().IndexOf(text, StringComparison.OrdinalIgnoreCase) > 0
)).ToArray();
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)