繁体   English   中英

在Azure Web App上预编译ASP.NET MVC视图

[英]Precompile ASP.NET MVC views on Azure Web App

有没有办法在Azure Web App上预编译ASP.NET MVC视图(特别是通过VSTS上的发布管理发布时)?

一旦每个视图被击中一次,页面随后呈现非常快。 但是第一次延迟对于用户来说可能是一种愚蠢的行为,并且无法通过脚本触摸每个页面。

我不确定是否需要在VSTS上构建/发布过程中更改某些内容(我使用的是Visual Studio Build构建步骤和Azure Web App发布任务),或者是否需要在Azure Web App实例上运行某些内容它被释放后(或其他一些东西)。

似乎找到一些方法在发布后调用aspnet_compiler可能是我需要的(我已经看到了参考云服务上的Web角色),但我无法让它工作。

调用

%windir%\Microsoft.NET\Framework\v4.0.30319\aspnet_compiler -v "/" -p "d:\home\site\wwwroot" 

通过Azure门户中的控制台执行得很好(如果有的话,找到错误)但对启动时间没有任何影响 - 第一次点击视图仍然需要很长时间。

所以也许这不是正确的方向。

我看过RazorGenerator(包括.MSBuild nuget包)并且我无法让它工作,但我真的犹豫要对项目进行如此多的更改只是为了在发布时进行预编译。

另请注意,我目前在VSTS中使用的是TFVC,而不是Git,因此据我所知,Kudu / Git集成(根据某些文章似乎确实触发了预编译)。

其他想法?

您可以在“Visual Studio Build”步骤中添加“/ p:PrecompileBeforePublish = true”参数: 在此输入图像描述

然后,任务将在构建过程中调用aspnet_compiler并生成用于部署的预编译输出。

在visual studio 2013+中,选择Build-> Profiles。 选择配置文件,然后选择“设置”。 在“配置”下,展开“文件发布选项”,然后选中“发布期间预编译”选项。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM