Dar*_*ent 5 c# asp.net datatable datarow generic-list
当我遍历DataTable对象时,我需要针对通用字符串List中的项检查每个DataRow对象.
我发现了一个使用List的Find方法和一个委托的博客帖子,但是那个例子有一个单独的类(Person),我正在使用字符串对象的实例尝试类似下面的内容:
// My definition of the List object.
List<string> lstAccountNumbers = new List<string>();
...
// I populate the List via its Add method.
...
foreach (DataRow drCurrentRow in dtMyDataTable.Rows)
{
if (lstAccounts.Find(delegate(string sAccountNumber) { return sAccountNumber == drCurrentRow["AccountNumber"]; })
{
Found_DoSomething();
}
else
{
NotFound_DoSomethingElse();
}
}
Run Code Online (Sandbox Code Playgroud)
但是,使用这种语法我收到"不能隐式地将类型'字符串'转换为'bool'"作为if块.
有人可以澄清我做错了什么以及如何最好地完成我想要做的事情?
相同的委托不同的方法。您想使用“Exists Not Find”。Find 返回值,exists 返回布尔值。
if (lstAccounts.Exists(delegate(string sAccountNumber) { return sAccountNumber == drCurrentRow["AccountNumber"]; })
Run Code Online (Sandbox Code Playgroud)