2009-10-29 7 views
14

Estoy trabajando en una aplicación web de gran tamaño construida en C# (asp.net). Tengo una página aspx simple que sirve cadenas localizadas en el navegador del cliente para su uso en controles de JavaScript. Para obtener las cadenas, hago lo siguiente:¿Por qué ResourceManager.GetResourceSet devuelve null en la primera solicitud después de una compilación? (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 

Todo esto funciona bien, a excepción de la primera solicitud a la página inmediatamente después de un limpio/Construir o una reconstrucción (si simplemente hacer algunos cambios, y luego construir, funciona bien). Entonces, en la primera solicitud obtengo una excepción de referencia nula cuando intento iterar el ResourceSet. Sin embargo, si actualizo la página después del error, funciona bien a partir de ese momento.

¿Alguien sabe por qué esto podría estar pasando?

Respuesta

33

El segundo parámetro "createIfNotExist" del método GetResourceSet tiene que ser verdadero, eso le dice a ResourceManager que cargue el ResourceSet si aún no está cargado.

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

Funcionó para mí. Gracias – hikalkan

+0

muy agradable, debe marcarse como la respuesta correcta. –

Cuestiones relacionadas