Problema con archivos de recursos específicos del idioma en un proyecto de biblioteca de clases

StackOverflow https://stackoverflow.com/questions/2213119

Pregunta

Estoy trabajando en una aplicación ASP.NET MVC 2 y uso una biblioteca de clases separada para mi modelo.Utilicé archivos de recursos en mi proyecto de biblioteca de clases para incrustar mensajes de validación y usarlos en mis clases de metadatos y todo estuvo bien hasta que decidí agregar un nuevo idioma a mi proyecto, así que cambié el nombre de Resource.resx a Resource.en-US.resx. y también lo copié y guardé como un nuevo Resource.fa-IR.resx para otro idioma, pero después de cambiarle el nombre, todo el archivo complementario Designer.cs desapareció y ya no puedo acceder al archivo de recursos.Tan pronto como elimino el nombre del idioma (p. ej.en-US) desde el nombre del archivo, funciona correctamente.

Ya configuré el Modificador de acceso en Público pero no obtuve resultados.

Estoy usando Visual Studio 2008 SP1.

¿Fue útil?

Solución

No cambie el nombre de resources.resx:en su lugar, simplemente agregue archivos de recursos para las culturas adicionales que necesite.

Resources.resx contiene los recursos "neutrales" que se compilarán en su ensamblado principal y se utilizarán como respaldo si no se localiza ningún ensamblado satélite para la cultura requerida.

Cada archivo de recursos adicional, p.Resource.fa-IR.resx normalmente se compilará en un ensamblaje satélite específico de la cultura.

También puede agregar a su AssemblyInfo.cs el NeutralResourcesLanguageAttribute, que informa al ResourceManager del idioma que ha utilizado para los recursos neutrales:

assembly: [System.Resources.NeutralResourcesLanguage("en-US")]

Otros consejos

No es necesario cambiar el nombre del idioma predeterminado que Resources.en-us.resx. Hemos de tener como Resources.resx y se puede utilizar como un archivo de recursos de reserva, es decir, si hay un lenguaje específico del usuario está ahí, por ejemplo, Árabe, se va a utilizar, así, usted debe tener los archivos con el nombre de la siguiente manera:

Resource.resx

Resource.fa-IR.resx

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top