mvc4开篇之BundleConfig(1)
新建一个mvc4默认项目,会看到以下目录

打开App_start 里面BundleConfig.cs文件
你会看到这么一段话:
有关 Bundling 的详细信息,请访问 http://go.microsoft.com/fwlink/?LinkId=254725
我现在讲的东西跟上面网址所说大同小异,不同网址里面是英文版
我这里讲的一些简单点
Bundling 这个英文从字面意思来说是:捆绑意思。。。
从程序层面来说:就是将所有文件捆绑在一起,然后压缩成一个文件
Demo就不使用官方,我手动建一个,估计大家会看明白点
1、在BundleConfig.cs加入以下2段话
bundles.Add(new StyleBundle("~/test/style").Include(
"~/Content/a.css",
"~/Content/b.css"));
注意:~/test/style这个可以理解虚拟文件夹,实际上是不存在,但它里面包括2个文件
~/Content/a.css 和 ~/Content/b.css
2、 在a.css加入以下内容,没有实际意义,为了测试
.a_test_style {
font-size:12px;
}
在b.css加入以下内容,没有实际意义,为了测试
.a_test_style {
font-size:12px;
}
3、在Home文件夹增加Index视图,当然对于controller也要增加 index()方法
参考一下官方调用例子 site.master里面
<%: Styles.Render("~/Content/css") %>
<%: Scripts.Render("~/bundles/modernizr") %>
<%: Styles.Render("~/Content/themes/base/css") %>
测试页面代码很简单
<%@ Page Language="C#" Inherits="System.Web.Mvc.ViewPage<dynamic>" %> <!DOCTYPE html> <html>
<head runat="server">
<meta name="viewport" content="width=device-width" />
<title>Test</title>
<%:Styles.Render("~/test/style") %>
</head>
<body>
<div>
<p>有钱就是任性</p>
</div>
</body>
</html>
调用:<%:Styles.Render("~/test/style") %>
4、生成 运行,看到以下结果
看到2条请求(google浏览器 F12)

当然 这个效果不是我最终所要的..
5、这就要我们合并文件,有2个方法
1、在配置文件Config<compilation debug="true" targetFramework="4.0" /> 将debug改为false
2、在BundleConfig.cs加上这段话 BundleTable.EnableOptimizations = true;
将config里面debug=false改一下,运行浏览器试试效果

看到只有一个请求,这是否就是我们所要的的呢?
F12打开谷歌开发工具,response看到 a.css b.css里面文件合并在一起

6、这样子做好处:减少http请求,缩短响应时间,提高网页速度,起到优化网站的作用。当然好处不止这些……
mvc4开篇之BundleConfig(1)的更多相关文章
- MVC4 开篇
开篇,肯定不讲技术. 新项目开工了,用到了MVC4,赶快来园子吐槽下. 刚出来一年,学到了一些东西,但是自知比菜鸟还不如,空闲不看书,不练习demo,快吐我吧... 哈哈,吐吧,哥还是一样淡定,淡定, ...
- 跟我一起学习ASP.NET 4.5 MVC4.0(六)(转)
这一系列文章跨度有点大,由于最近忙于其他事情,没有更新,今天重新安装了下Win8系统,VS2012和SQLServer 2012,顺便抽空继续一篇.随着VS2012 RC版本的放出,ASP.NET M ...
- ASP.NET MVC框架开发系列教程
本系列教程是自己在工作中使用到而记录的,如有错误之处,请给与指正 文章目录 MVC4 开篇 第一章 初识MVC4 第二章 下山遇虎(@helper) 第三章 Models模块属性详解 第四章 在MVC ...
- System.Web.Optimization对脚本和样式表的操作
这个也是本章重点向描述的部分,首先我们可以使用VS2012RC来新建一个MVC4.0项目,版本可以为4.0或4.5.在Global.asax文件代码中,我们发现已经把过滤器,路由器,以及对样式表和脚本 ...
- asp.net mvc Bundle
在使用ASP.NET MVC4中使用BundleConfig 将 js css文件 合并压缩使用,但是文件名含有min及特殊字符的将不引用 ,也不提示其他信息.
- ASP.NET MVC4中的App_start中BundleConfig的介绍使用
在BundleConfig.cs中,指定CSS和JS,主要用来压缩JS和CSS 在ASP.NET MVC4中(在WebForm中应该也有),有一个叫做Bundle的东西,它用来将js和css进行压 ...
- Oracle+FluentData+MVC4+EasyUI开发权限管理系统之开篇
在园子里有很多EF+MVC+EasyUI的框架实在是太多了,经过在一段时间的学习高手写的思路,但是都是针对Sql数据的,但是今年我当上研发组组长的第一个任务就是编写一个通用平台框架,一刚开始想把学习过 ...
- ASP.NET MVC4.0+EF+LINQ+bui+bootstrap+网站+角色权限管理系统(开篇)
系统预览: 源码下载:http://www.yealuo.com/Home/Detail?KeyValue=2f926407-f80b-4bff-a729-949a53efed7b 创建项目,新手按步 ...
- 21、ASP.NET MVC入门到精通——ASP.NET MVC4优化
本系列目录:ASP.NET MVC4入门到精通系列目录汇总 删除无用的视图引擎 默认情况下,ASP.NET MVCE同时支持WebForm和Razor引擎,而我们通常在同一个项目中只用到了一种视图引擎 ...
随机推荐
- ZooKeeper架构
ZooKeeper服务器端运行于两种模式下:独立模式(standalone)和仲裁模式(quorum).独立模式几乎与其术语所描述的一样:有一个单独的服务器,ZooKeeper状态无法复制.在仲裁模式 ...
- leetcode526
public class Solution { //回溯法 //根据回溯的思路,同样,可以对本题的Beautiful排列实现. //比如,当N为5时,使用回溯算法先是得到(1,2,3,4,5)排列,符 ...
- 禁止xfce4黑屏
我在ubuntu server上安装了xfce,可是每隔十分钟电脑就会黑屏.安装了xfce自带的电源管理程序.貌似不起作用.后来从网上找到如下方法: 修改/etc/X11/xorg.conf配置文件, ...
- spring cloud zuul 配置(Robbin 和 熔断)
#启动负载均衡的重试机制,默认falsespring.cloud.loadbalancer.retry.enabled=true#Hystrix是否启用超时时间hystrix.command.defa ...
- Spring 学习记录4 ResourceLoader
ResourceLoader Spring的ApplicationContext继承了ResourceLoader接口.这个接口主要就是可以加载各种resource.. 接口还是比较简单的: /* * ...
- python:随机数 random
#随机数 import random print(random.randint(10,12))#生成10-12之间的整数 print(random.uniform(10,12))#生成10-12之间的 ...
- 手游为什么要热更新,C#为什么不能热更新,LUA为什么可以
热更新是什么?简单的说就是打补丁,只补需要部分,不用重个游戏包重打上传 热更新问题的本质是代码更新而不是资源更新,为什么呢? 大型手游都是将补丁资源放在专门的WEB服务器上,游戏启动时动态下载并放入到 ...
- [JS] 让人犯晕的JavaScript变量赋值
变量赋值 本文转载自http://hellobug.github.io/blog/javascript-variable-assignment/ 开始之前先来几个例子,确保起始点是晕的状态- :P 例 ...
- C#中的goto
int i = 9;if (i % 2 == 0) goto Found;else goto NoFound; NoFound: Console.WriteLine(i.ToSt ...
- python gun readline
https://github.com/ludwigschwardt/python-gnureadline