2011-03-29 5 views
1
var pq = attributes.SingleOrDefault(a => a.AttributeName == PasswordQuestion").AttributeValue; 

위의 코드는 null 인 경우 오류를 발생시킵니다. 이것을 처리하는 가장 좋은 방법은 무엇입니까? 아래의 코드는 작동하지만 좀 더 우아한 방법이 있다고 느낄 수는 없습니다.null을 확인하는 람다 검사

var pq = (attributes.SingleOrDefault(a => a.AttributeName == "PasswordQuestion") != null) ? attributes.SingleOrDefault(a => a.AttributeName == "PasswordQuestion").AttributeValue : null; 

답변

6

나는 보통이 같은 일에 대한 Select 방법을 활용 :

var pq = attributes.Where(a => a.AttributeName == "PasswordQuestion") 
      .Select(a => a.AttributeValue) 
      .SingleOrDefault();