2008-10-28 6 views
2

LINQ를 파헤 치고 있습니다. 기본 모델을 이해하려고 노력하고 있습니다. 아래 코드는 업데이트를 수행하기 전에 수행 할 코드입니다.LINQ로 업데이트 수행

Linq01.Account acc = context.Accounts.Single(pc => pc.AccountID == AccountID); 
    acc.Name = textboxAccountNameRead.Text.Trim(); 
    context.SubmitChanges(); 

지금까지는 그렇게 좋았습니다. 그러나 Single() 메서드가 실패한 경우 - 계정 ID를 찾을 수없는 경우 어떻게합니까?

감사합니다. 쿼리 값을 반환하지 않는 경우

답변

9

당신은 당신이 널 (null)에 대해 그것을 확인할 수 SingleOrDefault을 사용해야합니다

var acc = context.Accounts.SingleOrDefault(pc => pc.AccountId == AccountId); 
if(acc != null) 
{ 
    acc.Name = textboxAccountNameRead.Text.Trim(); 
    context.SubmitChanges(); 
} 
+0

젠장. 오늘 아침에 엄선 된 수술을 한 것뿐입니다. 고맙습니다. –

1

이 Slace의 대답에 추가하려면, 다음 싱글을 호출하는 경우 ID를 찾을 수 없습니다 계정 그것은 예외를 던질 것이다. 에서 일부는 사례가 null을 반환하고 명시 적으로 처리하는 것보다 적절합니다.