如何将item的value属性与名为Value的datatable列进行比较?请帮我解释语法
if ((String)item.Value.IndexOf((string)results("value") Stringcomparison.CurrentCultureIgnoreCase) > -1)
{
returnItems.Add(item);
}
答案 0 :(得分:1)
您的问题和评论似乎在提出不同的问题,但在这两种情况下,答案可能是将大量的代码解开为解释变量:
string valueFromTable = currentRow["Value"].ToString();
bool itemValueContainsValueFromTable = item.Value.IndexOf(valueFromTable, StringComparison.CurrentCultureIgnoreCase) >= 0;
bool itemValueEqualsValueFromTable = item.Value.Equals(valueFromTable, StringComparison.CurrrentCultureIgnoreCase);
if (/* whichever of these you are interested in */)
{
returnItems.Add(item);
}
(忽略此处的错误情况,特别是如果item.Value为null)
请注意,要从DataTable获取值,您需要选择一行。如果您想查看该项是否与任何行匹配,请迭代行(foreach (var row in table.Rows)
)。