有沒有辦法在Azure Web App上預編譯ASP.NET MVC視圖(特別是通過VSTS上的發佈管理髮布時)?在Azure Web App上預編譯ASP.NET MVC視圖
一旦每個視圖被命中一次,頁面會很快呈現。但是,對於用戶來說,第一次延遲可能會很困難,並且腳本無法觸及每個頁面。
我不確定是否需要更改VSTS上的構建/發佈過程中的某些內容(我正在使用Visual Studio Build
構建步驟和Azure Web App
發佈任務),或者需要在Azure Web App實例上運行某些內容它被釋放後(或其他什麼東西)。
似乎在發佈之後找到某種方式調用aspnet_compiler
可能是我需要的(我已經看到了關於雲服務上的Web角色),但我無法實現這一點。
通過在Azure的門戶控制檯呼叫
%windir%\Microsoft.NET\Framework\v4.0.30319\aspnet_compiler -v "/" -p "d:\home\site\wwwroot"
執行就好了(如果有任何發現錯誤),但不會對啓動時間產生任何影響 - 打一個視圖首次仍需要很長時間。
所以也許這不是正確的方向。我已經看過RazorGenerator(包括.MSBuild nuget包),但是我不能完全理解它的工作原理,但是我真的很猶豫,爲了在發佈時進行預編譯而對項目進行了很多更改。
另請注意,我目前在VSTS中使用TFVC,而不是Git,因此根據我可以告訴的,Kudu/Git集成(根據某些文章似乎確實會觸發預編譯)並不適用於我。
其他想法?在參數「Visual Studio中建立」步:
我想知道,在您的發佈任務完成後,如果在網站上運行基於雲的網絡性能測試,您的視圖會首先受到影響嗎? – majita