Мне нужно переместить все жестко закодированные строки в исходный код в .resx файлах. Есть ли инструмент, который мог бы помочь мне найти все жестко закодированные строки в коде С#?
Найти все исходные жестко закодированные строки
Ответ 1
ReSharper 5 является очевидным выбором, но многие советы должны быть установлены для достижения ваших целей,
- Включите широкий анализ решений.
- Перейдите к
ReSharper
|Options
|Code Inspection
|Inspection Severity
|Potential Code Quality Issues
|Element is localizable
, установленному вShow as error
. - Вернитесь в Обозреватель решений и нажмите на проект (csproj).
- В панели свойств в категории ReSharper установите Localizable на Yes, Localizable Inspector to Pessimistic.
Затем вы можете найти почти все, что вам нужно, в панели "Ошибки в решении".
Надеюсь, что это поможет.
Ответ 2
Вы всегда можете выполнить поиск знака "
во всех файлах .cs. Это должно привлечь вас к большинству из них, без особого шума.
Ответ 3
Этот инструмент http://visuallocalizer.codeplex.com/ позволяет использовать пакетные перемещения для ресурсов вместе с другими функциями. Это FOSS, возможно, вы можете попробовать. (Я участвую)
Ответ 4
Resharper 5.0 (Beta) позволяет перемещать строки в ресурсы (он имеет встроенную функцию локализации). Попробуйте. Бета работает отлично, я использую его каждый день и не испытываю никаких проблем. Лучше всего это бесплатно до выхода из беты. Я даже рекомендую использовать ночные сборки, поскольку они кажутся стабильными.
Локализация и глобализация программного обеспечения всегда были жесткими и порой нежелательными задачами для разработчиков. ReSharper 5 значительно упрощает работу с ресурсами, предоставляя полный набор функций для файлов resx и использования ресурсов в коде С# и VB.NET, а также в разметке ASP.NET и XAML.
Выделенные функции включают перемещение строки в ресурс, поиск способов использования ресурсов и других действий навигации. В сочетании с поддержкой рефакторинга, проверками и исправлениями вы получаете удобную среду локализации.
Ответ 5
Некоторые из них найдены FxCop. Не уверен, каковы его пределы, я думаю, что это зависит от имен параметров и свойств (например: свойство, называемое "Текст", считается локализованным).
Ответ 6
Или выполните поиск, основанный на регулярном выражении, как описано здесь:
(?=(^((?!///).)*$)).*((".+?")|('.+?')).*