2014-01-28 7 views
4

У меня есть приложение C#, и я использую visual studio 2013 для его разработки. В попытке поддержать i18n, файлы ресурсы были сделаны для каждого языка:Редактирование нескольких файлов файлов ресурсов сразу в визуальной студии

resources.en.resx 
resources.fr.resx 
resources.es.resx 
resources.de.resx and so on... 

Я хочу изменить ключ (не значение) все файлы ресурсы на более описательные, например, изменение «Header.Text» на «MainExceptionTitle.Text» В настоящее время я не вижу возможности сделать это, но изменить его вручную в каждом файле, что очень утомительно.

Я просмотрел проект zeta resource editor, но он также позволяет редактировать значения, а не клавиши.

Есть ли способ сделать это?

ответ

1

С .resx файлы являются XML, вы можете сделать простую находку & заменить на них.

Replace in Files инструмент

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

Replace in Files dialog

1

Я использовал Zeta тоже - Это то, что работает для меня:

  • Создание автономных проектов в дзета, содержащий несколько языков
  • Редактирование обоих ключей и местные (национальные) значения

Что не работает, это изменение именования, так что он компилируется в visual studio.

Именование имен .resx приводит к автономным файлам ресурсов, которые не компилируются в визуальной студии в проекте ASP.NET. Файлы .design не компилируются.

При изменении имен файлов на следующую строку: _.resx, Zeta cannont управляет файлами, но визуальная студия компилирует соответствующие файлы .Design.

... взаимное исключение ??

+0

Прошу прощения, я не понимаю вашего ответа. Как я читаю первые 3 строки: «Зета работает для меня и позволяет мне редактировать ключи» – user1884155

+0

О ... позвольте мне уточнить. Zeta выравнивает ключи и национальные вариации, выровненные в одном ряду. Пример «MY_SPECIAL_KEY» => Danisk «Min special Nøgle», а на английском => «Мой специальный ключ». Дополнительно Можно также изменить идентификатор ключа из MY_SPECIAL_KEY, например. MY_COMMON_KEY. В любом случае, я узнал, что Зета была с открытым исходным кодом. Поэтому я клонировал программу на github и модифицировал ее, и как она следует за контентом ' _ <национальный тег> .resx' Проект доступен от: [github] (https://github.com/theodorjohannesen/ ZetaResourceEditor) –

1

Если вы установили Resharper, есть очень простой и безопасный способ:

  1. Откройте соответствующий файл-конструктор (это файл C#, созданный с помощью resx, называемый <ResxFileName>.Designer.cs).
  2. Перейдите к собственности ресурса, о которой идет речь. Здесь вы найдете статическое свойство для каждого ключа, определенного в файле resx.
  3. Используйте команду переименования Resharper (Ctrl-R, Ctrl-R на моей машине).

Resharper открывает диалог «Переименовать ресурс», который правильно обновляет все ключи ресурсов.

Смежные вопросы