gpt4 book ai didi

c# - 在 VS 2012 中编译之前修改 C# 代码

转载 作者:太空宇宙 更新时间:2023-11-03 13:40:47 24 4
gpt4 key购买 nike

我有一个类似的问题,就像这里的问题:Create MSBuild custom task to modify C# code *before* compile

我需要在编译前更改 .cs 文件。当然,由于版本控制,我不希望它们就地改变。我已经发现,自定义 MSBuild 任务可能是完成这项工作的正确选择。

引用上述问题的答案:

创建接受 cs 文件列表的自定义任务以在编译之前进行调整

  • 自定义任务调整接收到的文件列表并在磁盘上创建它们
  • 自定义任务在输出参数上设置更改文件列表
  • 任务的输出将替换原来的 cs 文件列表
  • 针对更改后的文件进行编译。

该解决方案看起来清晰且不错,但我无法找到什么(全部用于 Visual Studio 2012):

  • 该任务应该达到什么目标? BeforeCompile 还是为时已晚?
  • 我怎样才能将“编译文件”作为参数传递给任务?它是如何定义的?
  • 如何准确定义输出以便编译使用修改后的文件?

谢谢,如果有人能帮我举个例子就好了:-)

最佳答案

我的一位客户要求我在编译之前替换某些 AssemblyInfo.cs 文件中的一些版本和版权信息。我正在使用 RegEx 通过 FileUpdate 任务执行此操作。这当然会导致修改文件。但这完全没有问题,只需使用 Exec 任务并在构建作业结束时运行“svn revert”即可:

    <Target Name="RevertModifications">
<Message Text="reverting modifications..." />
<Exec Command="svn revert -R $(RootDir)"/>
</Target>

也许这会有所帮助?

关于c# - 在 VS 2012 中编译之前修改 C# 代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17101853/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com