今天发现MVC的ScriptBundle @Scripts.Render()后是按照我也不知道顺序显示在页面上的,后果就是jquery.min.js被排在了后面(反正我下面那堆默认jquery.min.js在第三个)导致javascript报错,所以很多情况不能自动按照首字母排序。

解决方法如下:

先新建一个类:

internal class AsIsBundleOrderer : IBundleOrderer
{
public virtual IEnumerable<BundleFile> OrderFiles(BundleContext context, IEnumerable<BundleFile> files)
{
return files;
}
}

之后绑定的时候这样绑定:

ScriptBundle mandatoryJs = new ScriptBundle("~/Metronic/mandatoryJs");
mandatoryJs.Orderer = new AsIsBundleOrderer();
mandatoryJs.Include(
"~/plugins/Metronic/global/plugins/jquery.min.js",
"~/plugins/Metronic/global/plugins/jquery-migrate.min.js",
"~/plugins/Metronic/global/plugins/jquery-ui/jquery-ui.min.js",
"~/plugins/Metronic/global/plugins/bootstrap/js/bootstrap.min.js",
"~/plugins/Metronic/global/plugins/bootstrap-hover-dropdown/bootstrap-hover-dropdown.min.js",
"~/plugins/Metronic/global/plugins/jquery-slimscroll/jquery.slimscroll.min.js",
"~/plugins/Metronic/global/plugins/jquery.blockui.min.js",
"~/plugins/Metronic/global/plugins/jquery.cokie.min.js",
"~/plugins/Metronic/global/plugins/uniform/jquery.uniform.min.js",
"~/plugins/Metronic/global/plugins/bootstrap-switch/js/bootstrap-switch.min.js"
);
bundles.Add(mandatoryJs);

就好了。

最后还可以再简化下:

bundles.Add(new ScriptBundle("~/Metronic/mandatoryJs") { Orderer = new AsIsBundleOrderer() }.Include(
"~/plugins/Metronic/global/plugins/jquery.min.js",
"~/plugins/Metronic/global/plugins/jquery-migrate.min.js",
"~/plugins/Metronic/global/plugins/jquery-ui/jquery-ui.min.js",
"~/plugins/Metronic/global/plugins/bootstrap/js/bootstrap.min.js",
"~/plugins/Metronic/global/plugins/bootstrap-hover-dropdown/bootstrap-hover-dropdown.min.js",
"~/plugins/Metronic/global/plugins/jquery-slimscroll/jquery.slimscroll.min.js",
"~/plugins/Metronic/global/plugins/jquery.blockui.min.js",
"~/plugins/Metronic/global/plugins/jquery.cokie.min.js",
"~/plugins/Metronic/global/plugins/uniform/jquery.uniform.min.js",
"~/plugins/Metronic/global/plugins/bootstrap-switch/js/bootstrap-switch.min.js"
));

看起来就和一开始比较像了。

MVC ScriptBundle自定义排序。的更多相关文章

  1. Java集合框架实现自定义排序

    Java集合框架针对不同的数据结构提供了多种排序的方法,虽然很多时候我们可以自己实现排序,比如数组等,但是灵活的使用JDK提供的排序方法,可以提高开发效率,而且通常JDK的实现要比自己造的轮子性能更优 ...

  2. DataTable自定义排序

    使用JQ DataTable 的时候,希望某列数据可以进行自定义排序,操作如下:(以中文排序和百分比排序为例) 1:定义排序类型: //百分率排序 jQuery.fn.dataTableExt.oSo ...

  3. 干货之UICollectionViewFlowLayout自定义排序和拖拽手势

    使用UICollectionView,需要使用UICollectionViewLayout控制UICollectionViewCell布局,虽然UICollectionViewLayout提供了高度自 ...

  4. DataGridView 绑定List集合后实现自定义排序

    这里只贴主要代码,dataList是已添加数据的全局变量,绑定数据源 datagridview1.DataSource = dataList,以下是核心代码. 实现点击列表头实现自定义排序 priva ...

  5. 【转】c++中Vector等STL容器的自定义排序

    如果要自己定义STL容器的元素类最好满足STL容器对元素的要求    必须要求:     1.Copy构造函数     2.赋值=操作符     3.能够销毁对象的析构函数    另外:     1. ...

  6. mysql如何用order by 自定义排序

    mysql如何用order by 自定义排序 id name roleId aaa bbb ccc ddd eee ,MySQL可以通过field()函数自定义排序,格式:field(value,st ...

  7. python 自定义排序函数

    自定义排序函数 Python内置的 sorted()函数可对list进行排序: >>>sorted([36, 5, 12, 9, 21]) [5, 9, 12, 21, 36] 但 ...

  8. 定制对ArrayList的sort方法的自定义排序

    java中的ArrayList需要通过collections类的sort方法来进行排序 如果想自定义排序方式则需要有类来实现Comparator接口并重写compare方法 调用sort方法时将Arr ...

  9. Qt之QHeaderView自定义排序(获取正确的QModelIndex)

    简述 前几节中分享过关于自定义排序的功能,貌似我们之前的内容已经可以很好地解决排序问题了,但是,会由此引发一些很难发现的问题...比如:获取QModelIndex索引错误. 下面,我们先来实现一个整行 ...

随机推荐

  1. C# Enum 获取枚举属性

    Enum使用 获取枚举属性 注意:扩展方法必须定义为静态类,静态方法中. public enum EnumPatientSource { [Description("住院")] I ...

  2. python3-基础5

    #函数 1 什么是函数? 2 为什么要用函数? 3 函数的分类:内置函数与自定义函数 4 如何自定义函数 5 语法 6 定义有参数函数,及有参函数的应用场景 7 定义无参数函数,及无参函数的应用场景 ...

  3. 黄聪:PHP去掉转义后字符串中的反斜杠\函数stripslashes

    addslashes函数主要是在字符串中添加反斜杠对特殊字符进行转义,stripslashes则是去掉转义后字符串中的反斜杠\,比如当你提交一段json数据到PHP端的时候可能会遇到json字符串中有 ...

  4. Java Web开发Session超时设置

    在Java Web开发中,Session为我们提供了很多方便,Session是由浏览器和服务器之间维护的.Session超时理解为:浏览器和服务器之间创建了一个Session,由于客户端长时间(休眠时 ...

  5. 工控随笔_08_西门子_Win10安装Step7.V5.6中文版授权管理器不能正常启动

    随着Windows系统的不断升级,西门子工控软件也不断升级,但是有时候在安装西门子 软件的时候会出现授权管理器不能正常启动的情况. 图  Step7 因为自动许可证管理器不能正常打开 如上图所示,报S ...

  6. python判断平台

    网上找到的判断平台的方法,特此记录 # -*- coding: utf-8 -*- import platform osName = platform.system() if(osName == 'W ...

  7. 利用redis 漏洞入侵挖矿临时解决办法

    top 看到一个bashd的进程占据了cpu ps aux |grep bashd cd /tmp 发现ddg.2011 的文件.root dump.rdb 在/root/.ssh  也有奇怪的文件 ...

  8. asp代码写的,微信会员报名转发分享带上下级和邀约人关系并且能微信支付asp编号的

    昨天晚上应一个客户要求写了一套代码,实现的功能是: 在微信公众号上注册会员,获取用户的头像和微信名称,进入会员中心报名,报名成功成功后,他如果转发链接给别人,别人打开后则成为他的下级,上面那个算是一个 ...

  9. Comparator与Comparable,自定义排序和类比较器,TreeSet对象排序

    /** * 学生类 * @author Administrator * */ public class Student { private String sno ; private String sn ...

  10. Android开发 解决EditText与NestedScrollView 滚动冲突问题

    问题简述 在将EditText套进NestedScrollView的情况下,EditText输入了多行内容后,无法触摸滚动到第一行 问题原因 在将EditText套进NestedScrollView的 ...