asp.net核心 – MVC6是否支持预编译视图?
发布时间:2020-12-15 22:59:05 所属栏目:asp.Net 来源:网络整理
导读:在 MVC6我可以在发布时预先编译.cshtml文件,以便在请求时不必首先编译它们. 可以在MVC6中预编译.cshtml文件吗? 解决方法 Visual Studio 2017的回答: 从Visual Studio解决方案资源管理器编辑您的项目.csproj,并添加MvcRazorCompileOnPublish和PreserveCompi
在< MVC6我可以在发布时预先编译.cshtml文件,以便在请求时不必首先编译它们. 可以在MVC6中预编译.cshtml文件吗?
解决方法
Visual Studio 2017的回答:
从Visual Studio解决方案资源管理器编辑您的项目.csproj,并添加MvcRazorCompileOnPublish和PreserveCompilationContext属性,其值为true,如果它不存在 <PropertyGroup> <TargetFramework>netcoreapp1.1</TargetFramework> .... <MvcRazorCompileOnPublish>true</MvcRazorCompileOnPublish> <PreserveCompilationContext>true</PreserveCompilationContext> </PropertyGroup> 通过nuget将包Microsoft.AspNetCore.Mvc.Razor.ViewCompilation添加到您的项目中或编辑.csproj <ItemGroup> ... <PackageReference Include="Microsoft.AspNetCore.Mvc.Razor.ViewCompilation" Version="1.1.0" /> </ItemGroup> **以下答案仅适用于ASP.NET Core RC1. ** 您可以创建一个继承自RazorPreCompileModule的类,并覆盖EnablePreCompilation方法将剃刀预编译设置为true. using Microsoft.AspNet.Mvc.Razor.Precompilation; using Microsoft.Dnx.Compilation.CSharp; namespace PrecompilationWebSite { public class RazorPreCompilation : RazorPreCompileModule { protected override bool EnablePreCompilation(BeforeCompileContext context) => true; } } 在Startup.cs中引用这个方法: public class Startup { // Set up application services public void ConfigureServices(IServiceCollection services) { // Add MVC services to the services container services .AddMvc() .AddPrecompiledRazorViews(GetType().GetTypeInfo().Assembly); } public void Configure(IApplicationBuilder app) { app.UseCultureReplacer(); app.UseMvcWithDefaultRoute(); } } 您可以在整个项目的asp.net github页面上查看预编译示例project. 您也可以在发布时编译整个应用程序. 这将发布编译为nuget包的整个应用程序. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- asp.net-mvc – 将{sitename}参数传递给MVC控制器操作
- ASP.NET 打开新页面或页面跳转
- asp.net – 有没有办法将动态文本应用于webform上的标记?
- asp.net-mvc – 使用OWIN和WsFederation为MVC,web api和sig
- asp.net-core – .net核心自定义身份验证中的User.Identity
- Global.asax中的ASP.NET MVC Application_Error处理程序
- asp.net-mvc – 使用实体框架的mvc中的模型和表之间的差异(
- asp.net – SqlDataSource在变量后面插入代码
- asp.net – 检测到SQL的非关闭连接
- 在ASP.NET中禁用JavaScript时检测
推荐文章
站长推荐
热点阅读