我知道你可以查看row.count或tables.count,但还有其他方法来判断数据集是否为空?
我会建议像: -
bool nonEmptyDataSet = dataSet != null && (from DataTable t in dataSet.Tables where t.Rows.Count > 0 select t).Any();
编辑:经过充分考虑,我已经大大清理了代码,我认为这更清洁了.非常感谢Keith关于使用.Any()的灵感.
根据Keith的建议,这是这种方法的扩展方法版本: -
public static class ExtensionMethods { public static bool IsEmpty(this DataSet dataSet) { return dataSet == null || !(from DataTable t in dataSet.Tables where t.Rows.Count > 0 select t).Any(); } }
请注意,正如Keith在他的帖子的评论中正确地纠正了我,即使数据集为空,这个方法也能正常工作.
怎么了?
(aDataSet.Tables.Count == 0)
?