发布后事件

35

对于普通的C#应用程序(例如Windows Forms),要在成功构建后执行命令,我会使用项目属性中的“生成事件-》后生成事件命令行”。

我有一个Web站点项目,我使用解决方案资源管理器中上下文菜单中的“发布…”命令进行“发布”。

是否有一种方式可以在成功发布后运行命令,如果有的话,如何做到?(例如后发布事件命令行字段)

Visual Studio 2008,ASP .Net Web站点项目,使用C#。

1个回答

29

更新:由于"Publish Web"不适用于基于文件夹的网站项目,因此本答案假设您正在询问Web应用程序项目。

您无法从VS IDE内部执行此操作。但是,您可以在记事本或您喜欢的XML编辑器中编辑项目文件,并在文件末尾添加一个名为AfterPublish的新目标。

如果您不确定在此目标中可以执行什么操作,您可能需要阅读有关MSBuild的更多信息。

您可以在MSDN上找到有关扩展VS构建过程的更多详细信息- 如何:扩展Visual Studio Build Process


谢谢,我担心在IDE中可能不可能实现。这是一个很好的解决方案,因为我们的CI使用msbuild脚本。我原本希望我们也可以在Visual Studio中完成它。我可能会创建一个新的msbuild脚本,然后创建一个“外部工具”命令来运行该构建脚本,而不是进行Visual Studio“发布”。如果可能的话,最好不要修改proj文件。感谢您的帮助和快速响应! - Russell
1
我投票反对此答案,因为我不明白这怎么能成为一个被接受的答案。一个网站没有项目文件。请通过澄清答案或提供评论来帮助我和其他人理解为什么这个答案被接受。 - AMissico
2
这只是术语混用。你是对的 - 基于文件夹的网站项目没有项目文件。然而,这种项目也没有发布命令。另一方面,Web应用程序项目有一个项目文件,并且“发布Web”命令适用于它们。我的假设是问题涉及Web应用程序与Web站点之间的区别。由于我的答案被接受,我敢猜测我的假设是正确的。当然,这并不能豁免我使用正确的术语。 - Franci Penov
@Franci 我是在网站项目的背景下寻找这个。它确实有一个发布功能,但没有项目文件,所以不太对。 - Ian Grainger
@Ian Grainger - 距离我回答已经过去了约2年。VS 可能已经发生了变化... :-) - Franci Penov
显示剩余3条评论

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接