Respuesta

30

Recursos locales:

  1. recurso local es específica para una sola página Web y se utiliza para proporcionar versiones de una página web en diferentes idiomas.
  2. Los recursos locales se deben almacenar en la subcarpeta App_LocalResources.
  3. Los recursos locales se deben nombrar en formato [.language/language and culture] .resx.

Ej: Default.aspx.resx- Archivo de recursos base. Este es el archivo de recursos predeterminado o alternativo.

Default.aspx.de.resx- Un archivo de recursos para los alemanes, etc.

Recursos Globales:

Global Resources Localization Suggestion for ASP.NET

  1. recurso global se puede leer desde cualquier página o código que está en la aplicación.
  2. El recurso global se debe almacenar en App_GlobalResources en la raíz de la aplicación.

    // Get the global resource string. 
    
    try 
    { 
        globalresourcestring = (String)GetGlobalResourceObject("MyResource", "GlobalResourceString1"); 
    } 
    catch 
    { 
        globalresourcestring = "Could not find global resource."; 
    } 
    
+0

cómo llamar al recurso global desde C#? –

+0

compruebe la respuesta actualizada –

+0

tnks parany, también he usado de esta manera: 'Resources.GeneralMessages.msg' donde' msg' es el nombre de ese recurso. –

6

Estos son los pasos para ASP.NET MVC aplicación Web 5

  1. Haga clic en el nombre de la solución.
  2. Agregar> Agregar carpeta ASP.Net> App_LocalResources
  3. El archivo debe abrirse. Agregar contenido. (Nombre/Valor)
  4. Busque el Modificador de acceso en la parte superior del archivo .resx y cámbielo a Público y guarde el archivo.
  5. Haga clic con el botón derecho en el archivo .resx de su elección y seleccione propiedades.
  6. Cambiar la acción de compilación desde el contenido al recurso incrustado.
  7. Abra el explorador de soluciones y expanda la carpeta Vistas.
  8. Abra el archivo web.config.
  9. Agregar nuevo espacio de nombres a la sección de espacios de nombres.

ex. <add namespace="ProjectName.App_LocalResources" />

Para acceder al archivo de recursos locales en el código HTML debe añadir

@using ProjectName.App_LocalResources 

a la parte superior de la página.

A continuación, puede acceder a los diferentes recursos en los App_LocalResources utilizando el

@NameOfResxFile.NameOfValueInResxFile 

espero que esto ayude.

+0

¿cómo puedo usar los recursos en el Modelo? –

1

Si usted está tan seguro sobre el hecho de que existe el recurso en el archivo .resx, puede intentar:

string myValue = HttpContext.GetGlobalResourceObject("MyResourceFile","MyResource").ToString(); 

Si no está seguro de si existe o no el recurso que puede utilizar:

var resultMessage = HttpContext.GetGlobalResourceObject("MyResourceFile","MyResource"); 

string myValue = resultMessage == null ? string.Empty : resultMessage.ToString();