C# 计算数据集中的行数

C# 计算数据集中的行数,c#,asp.net,dataset,C#,Asp.net,Dataset,在我的代码隐藏中,我在dataset中放置了一个查询结果,该结果返回如下表: Sl_NO COMPLEATED_ON SCORE IS_PRESENT MAX_VALUE 1 29/07/2010 4 0 12 2 29/07/2010 5 0 13 3 29/07/2010

在我的代码隐藏中,我在dataset中放置了一个查询结果,该结果返回如下表:

Sl_NO    COMPLEATED_ON      SCORE      IS_PRESENT      MAX_VALUE
1         29/07/2010          4            0              12
2         29/07/2010          5            0              13
3         29/07/2010          6            1              23
4         29/07/2010          7            1              44
5                             6            1
6                             5            0
7                             4            1
我的要求是,我需要计算列名称已完成的非空行总数。我的意思是,从上面的示例中,它应该返回4,因为列完成的其余三行是空的。有人能告诉我如何在C中执行此操作吗

您可以使用数据表的选择方法:

DataTable table = DataSet.Tables[tableName];

string expression = "COMPLEATED_ON IS NOT NULL AND COMPLEATED_ON <> ''";
DataRow[] foundRows = table.Select(expression);

int rowCount = foundRows.Length;
试试这个:

dsDataSet.Tables[0].Select("COMPLEATED_ON is not null").Length;

您可以使用LINQ来确定这一点:

var nonEmptyRows = (from DataRow record in myDataSet.Tables[0].AsEnumerable()
                   where !string.IsNullOrEmpty(record.Field<string>("COMPLEATED_ON"))
                   select record).Count();
然后,nonEmptyRows将是一个int,用于计算非空行的数量

var nonEmptyRows = (from DataRow record in myDataSet.Tables[0].AsEnumerable()
                   where !string.IsNullOrEmpty(record.Field<string>("COMPLEATED_ON"))
                   select record).Count();