我正在使用以下代码来获取过滤后的DataTable
DT = NewMobileFa.GetNewMobile().AsEnumerable().Where(r => arrList.Contains(r.Field<int>("NewMobileID")) && r.Field<string>("Status") == "OF").CopyToDataTable(); 这段代码给出了错误
Source contains no data rows哪一项是正确的并且实际上没有数据
我需要的是,如果没有数据行,我需要避免异常,而只是返回空的DataSource。
我能做到这一点吗?
发布于 2012-02-19 21:14:16
你可以这样做。首先,您需要获取所有行。然后检查检索到的行数。你可以查看MSDN DataTable.CopyToDataTable,它有很好的解释
var Rows = NewMobileFa.GetNewMobile().AsEnumerable().Where(r => arrList.Contains(r.Field<int>("NewMobileID")) && r.Field<string>("Status") == "OF");现在使用这些行检查数据是否在那里
if(Rows.Count()>0)
{
DataTable dt = Rows.CopyToDataTable();
}https://stackoverflow.com/questions/9349408
复制相似问题