如何检查datatable select方法返回datatable c#

时间:2014-12-31 06:24:09

标签: c# datatable

如何检查datatable select方法是否返回数据表c#

e.g

   datatable _dtt= dt.Select("fcm_id=1").CopyToDataTable();

上面的语句返回所有行,如果fcm_id为1,如果datatable没有任何行抛出异常....如何验证它的行

e.g     if(_dtt.Rows.Count> 0)

谢谢

2 个答案:

答案 0 :(得分:0)

您可以使用三元运算符检查计数是否大于0,然后调用CopyToDataTable(),否则返回空DataTablenull

DataTable _dtt = dt.Select("fcm_id=1").Count() > 0 ? dt.Select("fcm_id=1").CopyToDataTable() :new DataTable();

或正常if

var result = dt.Select("fcm_id=1");

DataTable _dtt =null;

if (result.Count() > 0)
    _dtt = result.CopyToDataTable();

答案 1 :(得分:0)

最好将选择结果分配给DataRow数组并检查数组的长度,然后使用CopyToDataTable()将数组分配给DataTable。

DataTable _dtt = new DataTable();
DataRow[] dr = _dtt.Select("fcm_id=1");//assign the result of select() to datarow array 
if (dr.Length > 0)//check if select() returns any data
   _dtt = dr.CopyToDataTable(); //copy the rows of data to the datatable