2011-03-12 67 views
3

我正在维护一个WinForms应用程序,该应用程序不是使用任何有助于本地化项目中与表单无关的类或表单的代码隐藏部分来编写的开发模式。是否有一个Visual Studio加载项用于从代码文件中的字符串填充资源文件?

因此,在几乎每个代码文件中都有一个带有英文文本的MessageBox()代码。我想找到一个工具,它将从代码中“刮掉”这些字符串,将这些字符串插入资源文件中,并用一个注释中的替换字符串替换对该资源的调用。

这样的工具是否存在?

+2

我知道,Resharper支持这个,或者非常相似的东西 – Linkgoron 2011-03-12 23:28:22

回答

5

ReSharper 5 Internationalization特点

当ReSharper的发现一个本地化 字符串,它可以帮助你与它只有一对夫妇的 点击移动到 资源文件。您可以选择搜索 相同的字符串,并将它们重构为 使用新的资源项目。

希望它有帮助。

+0

我安装了Resharper 5,并且当光标位于字符串上时没有列出此功能。 – 2011-03-14 19:47:24

+0

找到了这个功能,但并不是我一直在寻找的东西。即使如此,在扫描代码文件一小时左右后,我将所有内容都放入了资源文件中,所以我想我应该将其称为适当的工具! – 2011-03-15 02:31:56

2

Resharper可以做到这一点。有一个叫做RGreatEx的Resharper插件,它对字符串有很多本地化重构。我猜你正在寻找一些免费的东西,而这些都是花钱的。 RGreatEx在两年多的时间里也没有看到更新。

编辑:做了一些更多的搜索,并在CodePlex上找到this tool。它不支持将字符串拉到资源中,但它并排编辑多个资源文件以便于编写字符串转换。

+0

不;我愿意花钱。虽然,我确实有Telerik竞争产品的证书。而且,我宁愿在VS2005中保留这个特定的代码库,在那里它的表现非常好,除非有一些关于转到VS2008的良好参数,这都是维护模式。对于这个代码库,VS2010仍然是一个不同的动物... – 2011-03-12 23:36:21

+1

@Rob:你知道你可以使用VS2010和目标.NET 2.0吗? – 2011-03-13 04:28:07

+0

@John我意识到这一点,但是有了这个代码的虚拟机上还有其他的辅助工具,我只是不想全部移动。 – 2011-03-14 18:20:51

-4

你也可以用T4 templates做这种事情。我认为它们是在2005年建成的Vis Studio。

+0

-1:我知道T4模板,我不明白它们是如何应用于此的。解释一下,我将删除downvote。 – 2011-03-13 04:27:17

+0

我不在乎downvote。留在那里。 – 2011-03-13 05:13:13

+1

要点 - 你应该解释T4模板如何解决这个问题。那么,如果你想让我离开,我会离开它。 – 2011-03-13 05:14:43

0

ReSharper当然是这个领域的最佳选择,因为它可以扫描代码库中的所有字符串,并让您知道哪些可以放入资源中。

但是,如果你打算使用一个免费的工具,微软确实有一个开放源码的一个位置,

http://resourcerefactoring.codeplex.com/

你使用这个工具,因为它并不像ReSharper的智能手动扫描所有文件。

相关问题