С# warning - Отметить сборки с NeutralResourcesLanguageAttribute
Я получаю следующее предупреждение:
" CA1824 Отметить сборки с помощью NeutralResourcesLanguageAttribute"
Согласно MSDN, причиной этого является:
Сборка содержит ресурс, основанный на ResX, но не применяемый к нему атрибут System.Resources.NeutralResourcesLanguageAttribute.
Может кто-нибудь объяснить, что это значит?
Я не хочу определять конкретные настройки культуры. Я хочу, чтобы они были настраиваемыми.
Ответы
Ответ 1
NeutralResourcesLanguageAttribute информирует менеджера ресурсов о языке, который использовался для отображения ресурсов, которые содержатся в основной сборке. Например. если вы закодировали свою сборку так, чтобы она содержала ресурсы, которые находятся на английском языке, тогда включите следующую строку в свой AssemblyInfo.cs
[assembly: NeutralResourcesLanguage("en")]
Таким образом, при поиске ресурсов на английском языке менеджер ресурсов не будет искать сборку спутников английской культуры, а просто использовать ресурсы, содержащиеся в основной сборке. Это просто оптимизация производительности.
Ответ 2
атрибут NeutralResourcesLanguage сообщает диспетчеру ресурсов о языке, используемом в ваших нейтральных ресурсах (ресурсы, у которых имя файла не имеет суффикса кода культуры, например YourModule.resx
). Эта информация может быть использована во время ресурсного резервного процесса.