1、Scripts.Render和Styles.Render
简介
在MVC的Views文件夹的_Layout.cshtml
中会存在@Scripts.Render("~/bundles/jquery")
和@Styles.Render("~/Content/css")
。用到了Scripts.Render和Styles.Render
。
这两者的目的:这个是asp.net mvc用于优化页面请求的技术。基本功能与在页面中直接书写<script>
标签是一样的。但是通过Script.Render
方法,你可以预定义一组js文件,在最终页面上,asp.net mvc自身会采用比较优化的压缩技术和缓存技术,将多个js压缩优化并且整合为1个体积较小的js,但对于外部使用来说,功能是不会出现任何区别的,从而提高了页面体验。而压缩和缓存的过程都是通过框架自动实现的,你只需要按照缩进和自己的习惯写优雅的js代码即可。
使用
在App_Start
的BundleConfig.cs
类中,填写内容,例如:
public static void RegisterBundles(BundleCollection bundles)
{
bundles.Add(new ScriptBundle("~/bundles/jquery").Include("~/Scripts/jquery-{version}.js"));
bundles.Add(new ScriptBundle("~/bundles/project").Include("~/Scripts/projectjar/*.js"));
bundles.Add(new StyleBundle("~/Content/css").Include("~/Content/bootstrap.css","~/Content/site.css"));
}
语法
Script文件引用:@Scripts.Render(virtualPath[,virtualPath1][,virtualPath2][,...])
CSS文件引用:@Styles.Render(virtualPath[,virtualPath1][,virtualPath2][,...])
2、识别配置文件
有时在进行本地化的过程中会用到各种配置文件,例如在pdf.js中会用到locale.properties
。但在实际过程中,发现无法识别,出现如下的错误信息。
分析
无法识别文件的原因有多种。例如:路径错误、IIS不识别等。而以上的问题是IIS不认识此配置文件,所以即使路径正确,也会出现此问题
解决方案
为解决识别配置文件,需要在IIS的添加MIME类型。具体如图所示
在MIME类型中增加属性。如下图所示
具体的MIME类型可以参见链接mime类型大全,若在IIS中没有的,可以按照此方式进行对比并进行添加。