CA1824: Marcar los ensamblados con NeutralResourcesLanguageAttribute
Propiedad | Value |
---|---|
Identificador de la regla | CA1824 |
Título | Marcar los ensamblados con NeutralResourcesLanguageAttribute |
Categoría | Rendimiento |
La corrección es problemática o no problemática | Poco problemático |
Habilitado de forma predeterminada en .NET 9 | Como sugerencia |
Causa
Un ensamblado contiene un recurso basado en ResX pero no tiene System.Resources.NeutralResourcesLanguageAttribute aplicado.
Descripción de la regla
El atributo NeutralResourcesLanguageAttribute informa al administrador de recursos de la referencia cultural predeterminada de una aplicación. Si los recursos de la referencia cultural predeterminada están incrustados en el ensamblado principal de la aplicación y ResourceManager tiene que recuperar los recursos que pertenecen a la misma referencia cultural que la referencia cultural predeterminada, ResourceManager utiliza automáticamente los recursos que se encuentran en el ensamblado principal en lugar de buscar un ensamblado satélite. Esto omite el sondeo de ensamblado habitual, mejora el rendimiento de la búsqueda para el primer recurso que se carga y puede reducir el espacio de trabajo.
Sugerencia
Vea Empaquetado e implementación de recursos para conocer el proceso que ResourceManager utiliza para sondear archivos de recursos.
Corrección de infracciones
Para corregir una infracción de esta regla, agregue el atributo al ensamblado y especifique el idioma de los recursos de la referencia cultural neutra.
Especificación del idioma neutro para los recursos
En el Explorador de soluciones, haga clic con el botón derecho en el proyecto y seleccione Propiedades.
Seleccione la pestaña Paquete.
Nota
Si el proyecto es un proyecto de .NET Framework, seleccione la pestaña Aplicación y, luego, elija Información de ensamblado.
Seleccione el idioma en la lista desplegable Idioma neutro o Assembly neutral language (Idioma neutro del ensamblado).
Seleccione Aceptar.
Cuándo suprimir las advertencias
Se puede suprimir una advertencia de esta regla. Sin embargo, el rendimiento durante el inicio puede degradarse. Para suprimir esta advertencia, agregue dotnet_diagnostic.CA1824.severity = none
al archivo .globalconfig o .editorconfig.
Supresión de una advertencia
Si solo quiere suprimir una única infracción, agregue directivas de preprocesador al archivo de origen para deshabilitar y volver a habilitar la regla.
#pragma warning disable CA1824
// The code that's violating the rule is on this line.
#pragma warning restore CA1824
Para deshabilitar la regla de un archivo, una carpeta o un proyecto, establezca su gravedad en none
del archivo de configuración.
[*.{cs,vb}]
dotnet_diagnostic.CA1824.severity = none
Para obtener más información, consulte Procedimiento para suprimir advertencias de análisis de código.