【问题标题】:Compile MVC and Pre-Compile Views And Deploy Into Azure WebRole编译 MVC 并预编译视图并部署到 Azure WebRole
【发布时间】:2013-02-26 00:44:07
【问题描述】:

所以我有以下要求: 1. 编译一个大型 MVC 应用程序并预​​编译它的所有视图。 2. 为 web.config 运行转换 3. 打包发布部署到 Azure Web Role

我可以使用修改后的 proj 文件执行 1,如果我使用 msdeploy 可以执行 2,并且在使用 VS 2012 Azure 工具时可以正常执行 3。现在我想把这些都放在一个脚本化的过程中。

有没有人已经完成了腿部工作来让它运行?

【问题讨论】:

  • 你可以通过在命令行中传入/p:PrecompileBeforePublish=true而不是MvcViews-sounding属性来添加#1到#2
  • Richard - 谢谢,是的,我可以检查 UI 中的预编译复选框。我相信这里的挑战是我试图将 web 角色的发布与 webdeploy 的一些发布功能结合起来,它们似乎是不同的野兽。我知道我可以发布一个网络角色,然后对其进行网络部署,但只有当你有 1 个网络角色实例时才有效。

标签: asp.net-mvc azure asp.net-mvc-4 msdeploy azure-web-roles


【解决方案1】:

1)

/p:PrecompileBeforePublish=true

2 + 3)

您需要在 .ccproj 中添加以下 MSBuild 目标以复制到转换后的 Web.config 文件中(使用 Web.Release.config 作为转换目标):

<Target Name="CopySpecialFilesIntoPackage" AfterTargets="CopyWorkerRoleFiles">
  <ProjectName>WebProjectName</ProjectName>
  <TransformXml Source="$(ProjectDir)..\$(ProjectName)\Web.config" Transform="$(ProjectDir)..\$(ProjectName)\Web.Release.config" Destination="$(ProjectDir)obj\$(Configuration)\$(ProjectName)\$(ProjectOutput).config" />
</Target>

如果您想将网络部署到网络角色的多个实例,您可以在需要网络角色时使用 Azure 网站或开源项目 Azure Web Farm(例如自定义域上的 SSL)。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-12-07
    • 1970-01-01
    • 1970-01-01
    • 2019-02-21
    相关资源
    最近更新 更多