У меня есть приложение, которое анализирует XML-документы. Я храню ожидаемые имена тегов xml в файле RESX. Первая буква имени тега всегда строчная. Это отлично работает (и уже несколько лет) для моей культуры en-IE.Изменение культуры приложения меняет капитализацию строк ресурсов
Я создаю приложение, которое также будет запускать культуру pt-BR.
Код работает в en-IE. Но когда я меняю культуру на pt-BR, она терпит неудачу, потому что когда она извлекает имена тегов с помощью My.Resources.ParameterCollectionTag, первая буква теперь заглавная и, следовательно, тег не может быть найден в XML-документе.
Имеется только один файл ресурсов, он не локализован. Я отлажена в файл Resources.Designer.vb и resourceculture в собственности
Friend ReadOnly Property ParameterCollectionTag() As String
Get
Return ResourceManager.GetString("ParameterCollectionTag", resourceCulture)
End Get
End Property
установлен ни к чему. Однако CurrentThread.CurrentCulture настроен на pt-BR.
Чтобы быть ясным, My.Resources.ParameterCollectionTag возвращает 'paramters' в en-IE и 'Paramters' pt-BR.
Я новичок в локализации и застрял на этом этапе. Есть ли способ отключить это поведение. Я хочу, чтобы ResourceManager возвращал строки точно так же, как они есть в файле RESX.
Любые советы были бы с благодарностью получены.
Спасибо за ваше время.
Как работа вокруг, я устанавливаю My.Resources.Culture = New CultureInfo («en»), прежде чем я начну использовать My.Resources. Есть ли лучший способ сделать это? Код находится в библиотеке, поэтому я должен помнить, что каждый раз, когда я его использую, устанавливаю культуру. – richie