【发布时间】:2017-12-19 22:39:18
【问题描述】:
我需要将源代码中的所有硬编码字符串移动到 .resx 文件中。是否有工具可以帮助我找到 C# 代码中的所有硬编码字符串?
【问题讨论】:
-
在这里查看我的答案:stackoverflow.com/questions/29533905/…
标签: c# .net visual-studio localization
我需要将源代码中的所有硬编码字符串移动到 .resx 文件中。是否有工具可以帮助我找到 C# 代码中的所有硬编码字符串?
【问题讨论】:
标签: c# .net visual-studio localization
ReSharper 5 显然是一个选择,但必须设置许多技巧才能实现您的目标,
ReSharper|Options|Code Inspection|Inspection Severity|Potential Code Quality Issues|Element is localizable 设置为Show as error。然后你可以在解决方案面板的错误中找到几乎所有你需要的东西。
希望这会有所帮助。
【讨论】:
或者根据这里讨论的正则表达式进行搜索:
(?=(^((?!///).)*$)).*((".+?")|('.+?')).*
【讨论】:
您始终可以在所有 .cs 文件中搜索 " 符号。这应该可以让您了解其中的大多数,而不会产生太多噪音。
【讨论】:
此工具http://visuallocalizer.codeplex.com/ 允许将字符串批量移动到资源以及其他功能。它是 FOSS,所以也许你可以试一试。 (我参与)
【讨论】:
Resharper 5.0 (Beta) 允许您将字符串移动到资源中(它具有内置的本地化功能)。试试看。 Beta 工作正常,我每天都使用它,没有任何问题。最重要的是它在测试版结束之前是免费的。我什至建议使用night builds,因为它们看起来很稳定。
软件本地化和全球化对于开发人员来说一直是艰巨的,有时甚至是不必要的任务。 ReSharper 5 通过在 C# 和 VB.NET 代码以及 ASP.NET 和 XAML 标记中为 resx 文件和资源使用提供一整套功能,极大地简化了资源的使用。
专用功能包括将字符串移动到资源、查找资源的使用情况和其他导航操作。结合重构支持、检查和修复,您可以获得方便的本地化环境。
【讨论】:
有些是由 FxCop 发现的。不确定它的限制是什么,我认为它取决于参数和属性名称(例如:一个名为“Text”的属性被认为是本地化的)。
【讨论】: