如何测试通用字典对象以查看其是否为空?我想运行一些代码,如下所示:

while (reportGraphs.MoveNext())
{
    reportGraph = (ReportGraph)reportGraphs.Current.Value;
    report.ContainsGraphs = true;
    break;
}

reportGraph对象的类型为System.Collections.Generic.Dictionary
运行此代码时,reportGraphs词典为空,MoveNext()立即引发NullReferenceException。如果有一种处理空集合的更高效的方法,我不想在块周围放一个try-catch。

谢谢。

最佳答案

如果是通用词典,则只需检查Dictionary.Count即可。如果为空,则计数为0。

但是,就您而言,reportGraphs看起来像是IEnumerator<T>-您是否有理由手动枚举您的收藏?

07-26 08:39