유지중인 webforms 프로젝트에서 NullReferenceExceptions이 표시됩니다. 예외는 내 코드로 인해 예외가 발생하지 않기 때문에이 예외에 대한 스택 추적이 없다는 것입니다. 비동기 await 작업 null 참조 예외
을 : 나는 비 사용자 코드 스택 트레이스를 볼 때
System.NullReferenceException was unhandled Message: An unhandled exception of type 'System.NullReferenceException' occurred in mscorlib.dll Additional information: Object reference not set to an instance of an object.
, 내가 (모든 mscorlib에에) 다음을 참조 : 클립 보드에 복사
예외 세부 사항은 제로 지원을 제공 오류는 페이지를로드하거나 다시 게시하여 임의 및 일관성이 없습니다. 문제는 다른 사이트에 노출 된 REST 서비스에서 데이터를 가져 오는 데 System.Net.Http.HttpClient
을 추가 한 후에 시작되었습니다. HttpClient에는 데이터 송수신을위한 비동기 메서드 만 포함됩니다. 내부 stacktrace를 바탕으로, 나는 작업 <>/async/await를 범인으로 의심합니다.
문제 해결을 돕기 위해 .NET 4.6에서 컴파일하는 WebForms 사이트에서이 작업을 실행하고 있음을 다시 한번 확인해주십시오. 내 문제는 MVC로 업그레이드해야한다는 것입니다. 키 입력 및 그것을 말하지 마십시오). HttpClient를이 작업 <> 모든 항목을 노출하는 동안, 나는 호출하여 동 기적을 호출 오전 : 사전에
Task<MyObject> myResultTask = restClient.GetResultAsync(); MyObject myResult = myResultTask.Result; // no await
감사합니다!
단지 ( – Steve
@ 스티브 아니, ['Task.Result'] (https://msdn.microsoft.com/en-us/library/dd321468를 롤 await를 호출 (스티븐 클리어 리에서 코멘트에 권장) v = .110) .aspx) _does_ 작업이 완료 될 때까지 대기 한 후 값을 반환합니다. –
@ RenéVogt 만약 당신이 모든 종류의 이상한 문제들에 쉽게 빠져들 수 있다는 것을 기억한다면, – Steve