如何检查datatable select方法是否返回数据表c#
e.g
datatable _dtt= dt.Select("fcm_id=1").CopyToDataTable();
上面的语句返回所有行,如果fcm_id为1,如果datatable没有任何行抛出异常....如何验证它的行
e.g if(_dtt.Rows.Count> 0)
谢谢
答案 0 :(得分:0)
您可以使用三元运算符检查计数是否大于0,然后调用CopyToDataTable()
,否则返回空DataTable
或null
:
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