일반 사전 개체가 비어 있는지 테스트하려면 어떻게해야합니까? 나는 다음과 같이 몇 가지 코드를 실행하려면 : 이 코드를 실행 한 후 reportGraphs 사전이 비어와 MoveNext는()가 즉시 NullReferenceException이를 던졌습니다 System.Collections.Generic.Dictionary빈 generic.dictionary 컬렉션을 테스트하는 방법은 무엇입니까?
while (reportGraphs.MoveNext())
{
reportGraph = (ReportGraph)reportGraphs.Current.Value;
report.ContainsGraphs = true;
break;
}
reportGraph 객체 타입이다. 빈 콜렉션을보다 효율적으로 처리하는 방법이 있다면 블록 주위에 try-catch를 넣고 싶지는 않습니다.
감사합니다.
'reportGraphs' 자체가'null'이 아닌가요? – dtb
'System.Collections.Generic.Dictionary'은'MoveNext()'메소드를 가지고 있지 않습니다. 당신은 사전에 대한 반복자를 생각하고 있지 않습니까? –
대단히 죄송합니다. reportGraphs는 실제로 에서와 같이 .Enumerator로 정의됩니다. reportGraphs = new System.Collections.Generic.Dictionary .Enumerator(); 그래서 MoveNext()를 감지하는 방법은 열거 자에 적용 할 때 예외를 throw합니다. null을 확인하려고하면 연산자 '! ='를 'System.Collections.Generic.Dictionary .Enumerator'및 ' –
DEH