使用HashTable验证dataTable的每一列

时间:2009-02-20 10:34:15

标签: c# .net dataset

我有一个数据表,其列可以说是col1,col2,col3 现在我想验证每个列的值是否为0

我不想使用if else子句来写很多东西。

是否有可能使用HashTable或其他东西执行相同的任务?

3 个答案:

答案 0 :(得分:0)

循环Columns并将值{0}的列存储在List<DataColumn>中。

答案 1 :(得分:0)

您可以为OnColumnChanged事件创建一个事件处理程序,并检查该值是否为零。

答案 2 :(得分:0)

如果您想知道任何列是否为0,那么:

bool haveZero = (col1 == 0) || (col2 == 0) || (col3 == 0)

如果你需要知道是否所有都是零,那么用ands替换ors。

如果您想要计算列中的任何值是否为零,那么您可以使用LINQ:

bool col1HasZero = myDataTable.AsEnumerable()。Rows.Select(r =&gt;(int)r。[1])。Any(v =&gt; v == 0);

并用All(谓词)替换Any(谓词)以查看所有值是否为零。

(针对LINQ to DataSets的System.Data.DataSetExtensions.dll链接)。