使用Linq, Dot net Version 3.x在Datatable中查找文本
本文关键字:Datatable 查找 文本 Linq Dot net Version 使用 | 更新日期: 2023-09-27 17:51:06
我使用的是WindowsFormsApplication with Dot Net version 3.5。
我正在寻找一个快速的方法来找到一个字符串在数据表的行。我有一个字符串str1
,我想搜索数据表dt
是否包含str1
中的文本。
我有一个数据表,像这样。这只是一个示例,我在datatable中有近500个字符串。
string str1 = "Carrot";
DataTable dt = new DataTable();
dt.Columns.Add("Text");
dt.Rows.Add("Cat");
dt.Rows.Add("Dog");
dt.Rows.Add("Parrot");
dt.Rows.Add("Carrot");
dt.Rows.Add("Tomato");
dt.Rows.Add("Rabbit");
dt.Rows.Add("Pigon");
我正在寻找这样的东西;
if dt.Column("Text") contains str1 then
MessageBox.Show("The data table contains the string in str1");
if(dt.AsEnumerable().Any(x => x.Field<string>("Text") == str1))
{
...
}
如果不能使用LINQ
,则使用循环:
foreach (DataRow row in dt.Rows)
{
if (row["Text"] == str1)
{
MessageBox.Show("The data table contains the string in str1");
break;
}
}