2009-10-29 7 views
14

저는 C# (asp.net)로 작성된 대규모 웹 응용 프로그램을 만들고 있습니다. 자바 스크립트 컨트롤에서 사용하기 위해 클라이언트 브라우저에 지역화 된 문자열을 제공하는 간단한 aspx 페이지가 있습니다. 문자열을 얻으려면, 나는 다음을 수행하십시오왜 ResourceManager.GetResourceSet은 빌드 후 첫 번째 요청에서 null을 반환합니까? (C#)

ResourceManager _resources = new ResourceManager(_pathname, typeof(ARM).Assembly); 
ResourceSet rs = _resources.GetResourceSet(culture, false, false); 

//loop through rs and write the keys & values out to the client in plaintext 

이 모두 단순히 일부 변경 한 후 빌드 할 경우 (작성 또는 재 작성/즉시 청소 후 페이지에 대한 첫 번째 요청을 제외하고 잘 작동을, 그것은 잘 작동합니다). 따라서 첫 번째 요청에서 ResourceSet을 반복 할 때 null 참조 예외가 발생합니다. 그러나 오류 후 페이지를 새로 고치면 그때부터 정상적으로 작동합니다.

왜 이런 일이 일어날 지 알고 있습니까?

답변

33

GetResourceSet 메서드의 두 번째 매개 변수 "createIfNotExist"는 true 여야하며, 아직로드되지 않은 경우 ResourceSet을로드하도록 ResourceManager에 지시합니다.

ResourceSet rs = _resources.GetResourceSet(culture, true, false); 
+0

나를 위해 일했습니다. 감사합니다 – hikalkan

+0

아주 좋은, 정답으로 표시되어야합니다. –

관련 문제