【问题标题】:Adding a post-build event to a web site in Visual Studio 2008在 Visual Studio 2008 中向网站添加构建后事件
【发布时间】:2009-04-06 14:07:23
【问题描述】:

我在 Visual Studio 2008 中使用“网站”,我想添加一个构建后事件,它将构建时间附加到 web.config 文件中。是否可以?

【问题讨论】:

  • 看起来不像。使用网站而不是 Web 应用程序是否有任何具体原因?
  • 我没有理由不使用该应用程序,网站有时似乎是个好主意,我不知道两者之间的区别。
  • 看看下面我的回答。

标签: asp.net visual-studio-2008 web post-build-event


【解决方案1】:

恐怕网站不支持此功能,您需要使用网络应用程序项目。

【讨论】:

【解决方案2】:

采用 WAP(Web 应用程序项目)路线而不是 WSP(网站项目)的主要好处之一是您可以进行构建后事件。

因此,无论如何,开箱即用是不可能的。 Here is the detail.

【讨论】:

    【解决方案3】:
    1. 添加一个单独的(空)项目(“.buildstep”),向其中添加自定义构建步骤 - 您必须为主 Web 项目指定目标文件夹,但要使用预定义的环境变量(如$solutiondir、$platform、$mode 等)。
    2. 从主 Web 项目 (Project | Project Dependencies) 向这个新项目添加一个依赖项。
    3. 已执行重建 + 验证构建步骤。大功告成。
    4. ;o)

    【讨论】:

      【解决方案4】:

      也许这无关紧要,但您可以自定义启动选项(使其运行脚本/命令),尽管它只会在您启动项目时触发(Dubug -> Start)。

      【讨论】:

        【解决方案5】:

        一种可能的解决方案是创建一个没有任何文件的空虚拟 C#/VB 项目,并在那里添加必要的批处理脚本作为构建后事件。然后,您可以在发布网站后立即构建该“项目”——额外单击鼠标,但仍然比手动运行要好。我为我们的部署打包选择了这条路线,效果很好。

        【讨论】:

          【解决方案6】:

          您可以为网站类型的应用程序创建发布配置文件。 *.publishproj 应该被创建。 然后,您可以将 postpre 构建命令添加为 Targets

          <Target Name="BeforeBuildTarget" AfterTargets="BeforeBuild">
              <Exec Command="cmd.exe"></Exec>
          </Target>
          <Target Name="AfterBuildTarget" AfterTargets="AfterBuild">
              <Exec Command="cmd.exe"></Exec>
          </Target>
          

          【讨论】:

            猜你喜欢
            • 2010-10-21
            • 1970-01-01
            • 2010-10-24
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2016-08-11
            • 1970-01-01
            • 1970-01-01
            相关资源
            最近更新 更多