ASPNET預編譯CSHTML文件

有一個老項目使用Aspnet MVC4開放的.每次發(fā)布后,第一次訪問都特別慢, 簡單研究發(fā)現(xiàn)第一次訪問某個cshtml(View)文件,都會編譯.這個導致第一次加載特別慢.
簡單研究后發(fā)現(xiàn)在項目中增加MvcBuildViews后,會預編譯號所有的Cshtml文件.
.csProj文件增加如下配置.(注意,以前的項目文件需要unload項目后,才能編輯csproj文件, 或者用第三方編輯器直接編輯.csproj文件)

 <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
    <MvcBuildViews>False</MvcBuildViews>
  </PropertyGroup>
  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
    <MvcBuildViews>True</MvcBuildViews>
  </PropertyGroup>

以上的配置在Debug時關(guān)閉了MvcBuildViews,只在Release打開. 畢竟編譯View還是要一點時間的.

注意如果EnableUpdatable是True,會導致預編譯失敗.

<EnableUpdatable>false</EnableUpdatable> 

后記

后來發(fā)現(xiàn)預編譯效果一般, 老項目第一次訪問慢主要是初次啟動時,會緩存大量信息造成. 不過預編譯還是提高了一點效率.

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容