CA1824 : Marquez les assemblages avec NeutralResourcesLanguageAttribute

Propriété Valeur
Identificateur de la règle CA1824
Titre Marquer les assembly avec NeutralResourcesLanguageAttribute
Catégorie Performance
Le correctif a un effet disruptif ou non disruptif Sans rupture
Activé par défaut dans .NET 10 À titre de suggestion
Langues applicables C# et Visual Basic

Cause

Un assembly contient une ressource basée sur ResX, mais le paramètre System.Resources.NeutralResourcesLanguageAttribute ne lui est pas appliqué.

Description de la règle

L’attribut NeutralResourcesLanguageAttribute informe le gestionnaire de ressources de la culture par défaut d’une application. Si les ressources de la culture par défaut sont incorporées dans l’assembly principal de l’application et que ResourceManager doit récupérer des ressources qui appartiennent à la même culture que la culture par défaut, ResourceManager utilise automatiquement les ressources situées dans l’assembly principal au lieu de rechercher un assembly satellite. Cela permet de contourner la sonde d'assemblage habituelle, d'améliorer les performances de recherche de la première ressource chargée et de réduire votre ensemble de travail.

Conseil

Consultez Empaqueter et déployer des ressources pour le processus utilisé par ResourceManager pour sonder les fichiers de ressources.

Corriger les violations

Pour corriger une violation de cette règle, ajoutez l’attribut à l’assemblage et spécifiez la langue des ressources de la culture neutre.

Pour spécifier le langage neutre pour les ressources

  1. Dans l’Explorateur de solutions, faites un clic droit sur votre projet, puis sélectionnez Propriétés.

  2. Sélectionnez l’onglet Package.

    Note

    Si votre projet est un projet .NET Framework, sélectionnez l’onglet Application, puis sélectionnez les Informations de l’assembly.

  3. Sélectionnez le langage dans la liste déroulante Langage neutre ou Langage neutre de l’assembly.

  4. Sélectionnez OK.

Quand supprimer les avertissements

Il est permis de supprimer un avertissement de cette règle. Toutefois, les performances de démarrage peuvent se dégrader. Pour supprimer cet avertissement, ajoutez dotnet_diagnostic.CA1824.severity = none à votre fichier .globalconfig ou .editorconfig.

Supprimer un avertissement

Si vous voulez supprimer une seule violation, ajoutez des directives de préprocesseur à votre fichier source pour désactiver et réactiver la règle.

#pragma warning disable CA1824
// The code that's violating the rule is on this line.
#pragma warning restore CA1824

Pour désactiver la règle sur un fichier, un dossier ou un projet, définissez sa gravité sur none dans le fichier de configuration.

[*.{cs,vb}]
dotnet_diagnostic.CA1824.severity = none

Pour plus d’informations, consultez Comment supprimer les avertissements de l’analyse de code.

Voir aussi