2009-06-24 97 views
11

我们使用PublicResXFileCodeGenerator从* .resx文件生成* .Designer.cs文件。目前,只要保存.resx或右键单击并选择“运行自定义工具”,就会生成这些文件。在编译时运行PublicResXFileCodeGenerator

我希望能够在构建时自动运行此工具,而不必手动执行此工具。 Designer.cs文件不保存在源代码控制之下,所以每次有人更改资源时或第一次结帐时都不得不手动生成这些文件。如果这些文件是在每个构建版本上生成的,那么就没关系,因为它们不是很大,但只有在它们过期时才会更酷。

注意:这将作为Visual Studio构建的一部分,而不是命令行构建。我发现另一个问题的答案说,它可能从VS内,只是不是命令行:Run a Visual Studio custom tool at build time

回答

3

你可以编写一个VS宏,它可以在你需要的时候运行自定义工具。自动化方法是VSProjectItem.RunCustomTool。有一个类似的问题看看这个SO的答案:Run Custom Tool for entire solution

否则,PublicResXFileCodeGenerator只是StronglyTypedResourceBuilder Class VS包装,你可以自动化你想要的方式。我不知道是否有一个Msbuild任务,但你也可以编写一个,或者你可以在预先构建步骤中编写一个自定义程序。这里是一个关于如何使用这个类的例子:Strongly typed resources in ASP.NET

+0

我得到它的工作。我创建了一个Visual Studio加载项,当我的项目被构建时,它会在每个resx文件上运行定制构建工具。 – Sjoerd 2011-10-14 09:29:18

1

看看这个Code Project Article。这听起来像是一个很好的起点,让你得到你想要的东西。