本系列目录:ASP.NET MVC4入门到精通系列目录汇总
删除无用的视图引擎
默认情况下,ASP.NET MVCE同时支持WebForm和Razor引擎,而我们通常在同一个项目中只用到了一种视图引擎,如Razor,那么,我们就可以移除掉没有使用的视图引擎,提高View视图的检索效率。在没有删除WebForm引擎之前,检索控制器中不存在的视图时,我们可以从下图看到,检索视图的顺序是先Home目录下面,然后Shared目录下面的aspx、ascx文件。
1、在Global.asax中添加如下代码:
void RemoveWebFormEngines() { var viewEngines = ViewEngines.Engines; var webFormEngines = viewEngines.OfType<WebFormViewEngine>().FirstOrDefault(); if (webFormEngines != null) { viewEngines.Remove(webFormEngines); } } protected void Application_Start() { RemoveWebFormEngines(); //移除WebForm视图引擎 AreaRegistration.RegisterAllAreas(); WebApiConfig.Register(GlobalConfiguration.Configuration); FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters); RouteConfig.RegisterRoutes(RouteTable.Routes); BundleConfig.RegisterBundles(BundleTable.Bundles); AuthConfig.RegisterAuth(); }
现在再看下
压缩合并Css和Js
在APS.NET MVC4中,App_Start文件夹下面多了一个BundleConfig.cs类,专门用于压缩文件的,默认情况下压缩功能是开启的,当然我们也可以使用 BundleTable.EnableOptimizations = true;来显示设置开启。
注意要在Web.config中将 调试设置为false,压缩才会生效 <compilation debug="false" targetFramework="4.5" />
bundles.Add(new ScriptBundle("~/bundles/jquery").Include( "~/Scripts/jquery.min.js", "~/Scripts/jquery.easyui.min.js"));// "~/Scripts/jquery-{version}.js", bundles.Add(new StyleBundle("~/Content/css").Include("~/Content/themes/default/easyui.css", "~/Content/themes/icon.css"));//"~/Content/site.css",
我们来看下压缩合并前和压缩合并后的对比
压缩合并前:
压缩合并后
很明细,我们看到文件被合并了,减少了网络请求数,同时,文件的大小也减小了,说明被压缩处理了。
注意:我们只能合并同一类型的文件,也就是说不能把js和css文件合并到一起,只能单独合并js文件和css文件。
时间: 2024-10-20 08:51:38