Чтение файла .resx VB.NET SharpDevelop? - PullRequest
0 голосов
/ 07 февраля 2012

Есть ли способ прямого доступа к строке в .resx?

У меня есть несколько разных проектов, и .resx был создан с использованием шаблона SharpDevelop «Разное >> Пустой файл ресурсов».

Я пробовал большинство онлайн-методов, таких как:

... = new ResourceManager ("ProjectEtc.resxFileName", 
           Assembly.GetExecutingAssembly)

, но я получаю ту же ошибку:

Could not find any resources appropriate for the specified culture or 
neutral culture. Make sure "ProjectEtc.resxFileName.resources" was 
correctly embedded or linked into assembly "Project calling" at compile time...

независимо от того, что я делаю.

Может показаться, что мне нужно также преобразовать мой .resx в файл .resource, чего я бы не стал делать.

Не упускаю ли я некоторые шаги при использовании шаблона #develop?

Подождите секунду ... это даже лучший способ хранить константы в .NET?

Спасибо, Дейн

1 Ответ

0 голосов
/ 07 февраля 2012

Убедитесь, что у файла .resx Действие построения установлено на EmbeddedResource .SharpDevelop должен делать это по умолчанию при создании нового файла с использованием шаблона файла пустых ресурсов, но его стоит проверить.

Теперь вам нужно передать корневое пространство имен вашего проекта и имя файла resx без расширения файла.в конструктор ResourceManager.

Так что, если вы создадите новый проект в SharpDevelop под названием TestResource, мое корневое пространство имен будет TestResource.Затем, если вы добавите файл ресурсов с именем Foo.resx в ваш проект.Затем добавьте строку с именем «MyString», после чего вы сможете получить доступ к соответствующему строковому значению с помощью следующего кода:

Dim resourceManager As New ResourceManager("TestResource.Foo", Assembly.GetExecutingAssembly)
Dim result = resourceManager.GetString("MyString")

Когда вы компилируете свое приложение, файл .resx будет скомпилирован в файл .resources и внедрен вваш проект.Если вы используете такой инструмент, как ILSpy , вы сможете увидеть этот встроенный ресурс и то, как он называется.

Использование файлов .resx обычно является способом, которым вы делаете многоязычные приложения в .NET, поэтому их использованиехранить строки в порядке.

...