回答
是的,你可以。看看下面的帖子:Compile your asp.net mvc Razor views into a seperate dll
這是關於如何將剃鬚刀視圖編譯爲單獨的dll的「分步指南」。我不知道這是你的目標,但它肯定會讓你朝着正確的方向發展。
這個答案現在已經過時了,你現在應該參考這篇文章:http://blog.davidebbo.com /2011/06/precompile-your-mvc-views-using.html – Quango 2012-06-13 08:33:32
是的,這是可能的。事實上,我能想到的最好的例子是電子郵件模板引擎。如果您編譯和緩存模板,那麼您可以快速刪除電子郵件,而無需再次進行解析。
這是一個在MVC之外使用Razor的好例子。
編輯:
下面是有關這個主題的一篇博客文章,以及:
How to Detect Errors of Our ASP.NET MVC Views on Compile Time
爲了讓您的意見被編譯,執行下列操作;
- 卸載你的項目通過對對 點擊在VS解決方案 Explorer中的項目,然後點擊卸載 項目
- 右鍵單擊已 被轉換爲不可 工程項目,然後單擊「編輯 your_project_name .csproj「(即 將是.vbproj,如果您的 項目是VB項目)
請參閱以下代碼;
<!--There some lines of code here and I deleted them to get to the point quickly--> <TargetFrameworkVersion>v4.0</TargetFrameworkVersion> <MvcBuildViews>false</MvcBuildViews>
變化從
false
的MvcBuildViews標記值true
後保存並重新加載 項目。
當你編譯你的解決方案後,你會看到你的視圖也會被編譯。
注意:要測試它,有意破壞一些代碼並嘗試構建。你會看到你會得到一個錯誤信息。
我會試試看看會發生什麼。 – 2011-04-02 16:56:56
它應該工作。你嘗試過嗎? – tugberk 2011-04-02 17:00:30
完成此更改後,在構建我的解決方案時,我開始越過應用程序級別錯誤消息獲得''allowDefinition ='MachineToApplication'。解決方案是在* debug模式和release模式下運行_Clean Solution_。 – 2013-07-17 14:12:31
MvcBuildViews檢查非常好,但如果它足夠複雜,它會爲構建您的Web應用程序增加5-10秒的處罰。它不會緩存編譯輸出,因此每次都會對所有視圖進行完整編譯。
我找到了一個很好的平衡通過以下的above advice並添加條件屬性:
<MvcBuildViews Condition=" '$(Configuration)' == 'Release' ">true</MvcBuildViews>
我們預計到ReSharper的標誌了在視圖中的任何錯誤,反正和開發人員可以隨時建立釋放配置作爲測試 - 我們有一個開發前運行的「預檢」腳本,以便他們可以輕鬆確保包目標的工作等 - 如果所有失敗,構建服務器將捕獲它。
也許這個技巧很明顯,但我只是真的開始正確地學習msbuild,而不是爲這些任務編寫Powershell腳本。我希望這對某人有幫助。
這是純粹的光彩:) – Korayem 2015-09-09 22:50:08
- 1. Aspnet Core Razor視圖編譯失敗
- 2. 我可以使用服務器端JavaScript來在Razor中編碼視圖嗎?
- 3. 預編譯的Razor視圖與ASP.NET Core的字符串
- 4. 如何在MVC Razor視圖中查找編譯時錯誤?
- 5. 可以在設計時編譯Servicestack Razor頁面
- 6. python distutils可以編譯CUDA代碼嗎?
- 7. Flex可以編譯Flash Lite 3嗎?
- 8. libpcap可以編譯爲iPhone/armv6嗎?
- 9. GCC可以交叉編譯AIX嗎?
- 10. Scala.js可以自行編譯嗎?
- 11. 可以加速F#編譯器嗎?
- 12. 可以Cython編譯爲EXE嗎?
- 13. 可以從stdin編譯javac嗎?
- 14. 在Razor視圖
- 15. Razor視圖 - 第
- 16. 在Razor視圖
- 17. Razor視圖流
- 18. EF預編譯視圖可以與Oracle和Devart一起使用嗎?
- 19. mvc razor @helper可以返回一個非編碼標籤嗎?
- 20. 我可以創建一個在asp.net mvc 3中呈現Rss的Razor視圖嗎?
- 21. 模型的屬性可以在Razor視圖中間接訪問嗎?
- 22. asp.net Mvc3 Razor:有沒有一種方法可以編譯從vs2010 IDE的單個視圖
- 23. 在編譯時VS2010編譯視圖?
- 24. 是否有可能以編程方式確定ASP.NET MVC的Razor視圖模型?
- 25. VB ASP.net MVC Razor:以編程方式更改視圖(模板)
- 26. 從一個Razor視圖重定向到另一個Razor視圖
- 27. Android-我們可以編程創建材質視圖嗎?
- 28. 伺服器包視圖可以實時編輯Rnw文件嗎?
- 29. 模型可以觀察視圖嗎?
- 30. iPhone子視圖可以透明嗎?
從技術上講,它們是從即時編譯器編譯的。您也可以啓用視圖構建,以使複選框失敗。 – 2015-11-30 15:34:25
相關:http://stackoverflow.com/questions/383192/compile-views-in-asp-net-mvc – 2016-10-05 14:14:55