【问题标题】:How to get MSBUILD to precompile .aspx pages如何让 MSBUILD 预编译 .aspx 页面
【发布时间】:2012-09-24 19:53:40
【问题描述】:

我正在使用 Team City 设置构建服务器,以自动构建和部署 asp.net Web 应用程序到具有转换的 web.configs 的临时站点。一切正常,除了当您在记事本中打开它们时网站上的代码(aspx 文件)中包含 HTML。

在这之前,我使用的是网站部署项目,并编译了代码。如果你在部署后打开一个,它说它是一个标记文件。

我已经尝试了一些关于这个过程应该如何工作的教程,但是代码总是以可编辑状态结束(html)。

我的问题是:

我需要做什么才能从命令行获取 MSBUILD 以最终在 Web 服务器上预编译代码?

任何建议、链接、指针或想法都会对我很有帮助。

【问题讨论】:

  • 您应该能够将项目文件中的 MvcBuildViews 属性设置为 true。

标签: asp.net msbuild teamcity


【解决方案1】:

您需要调用aspnet_compiler 工具来执行此操作。有一些限制或复杂性,具体取决于您需要为强命名之类的事情做些什么。 MSDN文章here有指点。

我曾经有执行此操作的 MSBuild 项目步骤,但我们决定放弃预编译,因为我们的客户希望将我们的产品集成到他们的内部门户中,而预编译使他们的事情变得复杂。

【讨论】:

    【解决方案2】:

    您使用的是 MS Web 部署吗?我经常将它用于从我的 Team City Build 服务器到 dev、staging、QA 等的自动化部署。我也在转换配置。

    如果您想查看此替代方案,可以按照 Troy Hunt 的出色指南进行操作: http://www.troyhunt.com/2010/11/you-deploying-it-wrong-teamcity_26.html

    【讨论】:

    • 我在 Team City 中通过命令行使用 msbuild 进行构建,然后在 Team City 中使用 power shell 进行 robo copy 进行部署。自从我发布我的原始问题后,我了解到我需要使用 msdeploy将我的代码复制到服务器,在这种情况下,我正在尝试将其发送到我的登台服务器。感谢您的文章,到目前为止,我只完成了大约一半。
    • 让 MS Deploy 为您做这件事可能会更简单,是的。它有不同的方法来自动化你的配置文件的转换。特洛伊的指南对我来说是一个很好的开始。希望对你也有帮助。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-12-19
    • 2021-09-14
    • 1970-01-01
    • 2017-07-03
    • 1970-01-01
    相关资源
    最近更新 更多