如果您使用IIS(很有可能)並且想要使用system.webServer部分來配置IIS,則web.config文件仍然存在。如果您正在使用Azure並且希望在ASP.NET 5文檔中看到如here所示的完整錯誤詳細信息,那麼也需要這樣做。
其次,您仍然可以通過選中屬性窗口中的'生成輸出生成'複選框來將您的項目生成到DLL中。這可以通過包括下面的代碼預編譯的意見相結合(這僅處於Beta 7的作品):
/// <summary>
/// Enable pre-compilation of Razor views, so that errors in your .cshtml files are caught and displayed
/// in the Visual Studio errors window at compile time, rather than your sites users receiving a runtime 500
/// internal server error. Pre-compilation may reduce the time it takes to build and launch your project but will
/// cause the build time to increase. It will also stop edit and continue working for .cshtml files.
/// </summary>
public class RazorPreCompilation : RazorPreCompileModule
{
public RazorPreCompilation(IServiceProvider provider) : base(provider)
{
this.GenerateSymbols = true;
}
}
我認爲基於文件的更改應用程序域重啓IIS的功能,而不是的一個特徵應用程序本身,我相信這將繼續工作。如果您使用的是IIS以外的主機,則您是獨立的。
這個問題並不是專門針對預編譯的Razor,但這個答案是我在主題上找到的大部分信息。 從Beta 8開始,RazorPreCompilation類包含在模板中,但在/Compiler/PreProcess/RazorPreCompilation.cs中註釋掉了。另外,在Startup ConfigureServices中,可能需要在「services.AddMvc()」後面添加「.AddPrecompiledRazorViews(GetType()。GetTypeInfo()。Assembly)」。 有關使用預編譯的Razor視圖的項目示例,請參閱https://github.com/aspnet/Mvc/tree/2e32ffc004be74a0a13057349641141239a610ea/test/WebSites/PrecompilationWebSite – Jeremy
不錯的@James,該示例應用似乎是唯一的地方引用'AddPrecompiledRazorViews'。可能只需要在Web項目本身之外的其他程序集中引用預編譯的視圖,但我不確定。這可能值得問一個關於asp.net GitHub問題的問題。 –
我已經在GitHub上提出了這個問題[https://github.com/aspnet/Mvc/issues/3369]。 –