CA1824: Assemblys mit NeutralResourcesLanguageAttribute markieren.
Eigenschaft | Wert |
---|---|
Regel-ID | CA1824 |
Titel | Assemblys mit NeutralResourcesLanguageAttribute markieren. |
Kategorie | Leistung |
Fix führt oder führt nicht zur Unterbrechung | Nicht unterbrechend |
Standardmäßig in .NET 9 aktiviert | Als Vorschlag |
Ursache
Eine Assembly enthält eine RESX-basierte Ressource, auf die System.Resources.NeutralResourcesLanguageAttribute jedoch nicht angewendet wurde.
Regelbeschreibung
Das Attribut NeutralResourcesLanguageAttribute informiert den Ressourcen-Manager über die Standardkultur einer App. Wenn die Ressourcen der Standardkultur in die Hauptassembly der APP eingebettet sind und ResourceManager Ressourcen abrufen muss, die derselben Kultur angehören wie die Standardkultur, verwendet ResourceManager automatisch die Ressourcen, die sich in der Hauptassembly befinden, anstatt nach einer Satellitenassembly zu suchen. Dadurch wird der übliche Assemblytest umgangen, die Suchleistung für die erste Ressource, die Sie laden, verbessert und Ihr Arbeitspaket kann reduziert werden.
Tipp
Weitere Informationen zum Prozess, der von ResourceManager verwendet wird, um nach Dateiressourcen zu suchen, finden Sie unter Packen und Bereitstellen von Ressourcen.
Beheben von Verstößen
Um einen Verstoß gegen diese Regel zu beheben, fügen Sie der Assembly das Attribut hinzu, und geben Sie die Sprache der Ressourcen der neutralen Kultur an.
So geben Sie die neutrale Sprache für Ressourcen an
Klicken Sie im Projektmappen-Explorer mit der rechten Maustaste auf Ihr Projekt, und wählen Sie Eigenschaften aus.
Wählen Sie die Registerkarte Paket aus.
Hinweis
Wenn es sich bei Ihrem Projekt um ein .NET Framework-Projekt handelt, wählen Sie die Registerkarte Anwendung und dann Assemblyinformationen aus.
Wählen Sie für die Sprache in der Drop-down-Liste neutrale Sprache oder Assemblyneutrale Sprache aus.
Klicken Sie auf OK.
Wann sollten Warnungen unterdrückt werden?
Eine Warnung, die auf dieser Regel basiert, darf unterdrückt werden. Die Startleistung kann jedoch beeinträchtigt werden. Um diese Warnung zu unterdrücken, fügen Sie Ihrer GLOBALCONFIG- oder EDITORCONFIG-Datei den Eintrag dotnet_diagnostic.CA1824.severity = none
hinzu.
Unterdrücken einer Warnung
Um nur eine einzelne Verletzung zu unterdrücken, fügen Sie der Quelldatei Präprozessoranweisungen hinzu, um die Regel zu deaktivieren und dann wieder zu aktivieren.
#pragma warning disable CA1824
// The code that's violating the rule is on this line.
#pragma warning restore CA1824
Um die Regel für eine Datei, einen Ordner oder ein Projekt zu deaktivieren, legen Sie den Schweregrad in der Konfigurationsdatei auf none
fest.
[*.{cs,vb}]
dotnet_diagnostic.CA1824.severity = none
Weitere Informationen finden Sie unter Vorgehensweise: Unterdrücken von Codeanalyse-Warnungen.