我们也可以在Asp.Net WebForm项目中去使用Optimization,去处理我们的资源文件,从而起到优化网站性能的效果,前端知识得从小事做起。但是在使用过程中我却发现了下面的问题。

第一步:新建一个Asp.Net WebForm项目 ,然后 通过NuGet添加Microsoft ASP.NET Web Optimization Framework的引用

第二步:在App_Code中添加BundleConfig.cs

using System.Web.Optimization;

public class BundleConfig
{
public static void RegisterBundles(BundleCollection bundles)
{
bundles.Add(new StyleBundle("~/bundles/news.css")
.Include("~/common/a.css",
"~/common/b.css")); bundles.Add(new ScriptBundle("~/bundles/news.js")
.Include("~/script/a.js",
"~/script/b.js",
"~/script/c.js"));
}
}

第三部: 在Global.asax的Application_Start中添加如下代码:

System.Web.Optimization.BundleTable.EnableOptimizations = true;//是否开启合并
BundleConfig.RegisterBundles(System.Web.Optimization.BundleTable.Bundles);

第四步:在.aspx中添加如下的 js/css 引用代码

<head>
<title>测试</title>
<%: System.Web.Optimization.Styles.Render("~/bundles/news.css") %>
<%: System.Web.Optimization.Scripts.Render("~/bundles/news.js") %>
</head>

第五步:查看运行结果:

于是我好奇的看了看“/bundles/new.css?v=kmhQVjhQvjknAFAwxWSfOW5ueVMUIDDpyCtaw5lHjBY1”,好家伙里面报错了,说找不到路径,错误如图:

于是我朝着路径错误的方向试了试,改改路径。把“第二步”中的路径都改成了这样:

public class BundleConfig
{
public static void RegisterBundles(BundleCollection bundles)
{
//bundles.Add(new StyleBundle("~/bundles/news.css")
// .Include("~/common/a.css",
// "~/common/b.css")); //bundles.Add(new ScriptBundle("~/bundles/news.js")
// .Include("~/script/a.js",
// "~/script/b.js",
// "~/script/c.js")); bundles.Add(new StyleBundle("~/css")
.Include("~/common/a.css",
"~/common/b.css")); bundles.Add(new ScriptBundle("~/bundlesJs")
.Include("~/script/a.js",
"~/script/b.js",
"~/script/c.js"));
}
}
<head runat="server">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title></title>
<%: System.Web.Optimization.Styles.Render("~/css") %>
<%: System.Web.Optimization.Scripts.Render("~/bundlesJs") %>
</head>

于是就解决了这个奇怪的问题,好像这个在MVC中是不一样的。

效果如图:

不知道其他"小伙伴"有没有遇到过类似的问题!

System.web.optimization 在 Asp.Net WebForm 中应用得注意了的更多相关文章

  1. asp.net webform 中使用Microsoft ASP.NET Web Optimization压缩js及css

    使用静态资源压缩可以合并静态资源文件减少客户端请求数量,压缩文件大小,减少网络流量的损耗. 注:只有通过web.config关闭调试功能,压缩才会生效 <system.web> <c ...

  2. 在ASP.NET Web Forms中用System.Web.Optimization取代SquishIt

    将一个ASP.NET Web Forms项目从.NET Framework 4.0升级至.NET Framework 4.5之后,发现SquishIt竟然引发了HTTP Error 500.0 - I ...

  3. asp.net mvc4 System.Web.Optimization找不到引用

    在MVC4的开发中,如果创建的项目为空MVC项目,那么在App_Start目录下没有BundleConfig.cs项的内容,在手动添加时在整个库中都找不到:System.Web.Optimizatio ...

  4. MVC 中 System.Web.Optimization 找不到引用

    在MVC4的开发中,如果创建的项目为空MVC项目,那么在App_Start目录下没有BundleConfig.cs项的内容,在手动添加时在整个库中都找不到:System.Web.Optimizatio ...

  5. 【Ext.Net学习笔记】01:在ASP.NET WebForm中使用Ext.Net

    Ext.NET是基于跨浏览器的ExtJS库和.NET Framework的一套支持ASP.NET AJAX的开源Web控件,包含有丰富的Ajax运用,其前身是Coolite. 下载地址:http:// ...

  6. System.Web.Optimization 合并压缩技术的使用

    捆绑和压缩原理是:将多个css文件动态合并和压缩为一个css文件.多个js文件动态合并和压缩为一个js文件,如此达到减少浏览器对服务器资源文件的请求数量.缩小资源文件的尺寸来提高页面反应速度的目的.A ...

  7. 使用System.Web.Optimization对CSS和JS文件合并压缩

    在ASP.NET MVC 中JS/CSS文件动态合并及压缩通过调用System.Web.Optimization定义的类ScriptBundle及StyleBundle来实现. 大致步骤如下: 1.A ...

  8. Mvc 之System.Web.Optimization 压缩合并如何让*.min.js 脚本不再压缩

    最近项目中用到了easy ui ,但是在配置BundleConfig 的时候出现了问题,easy ui的脚本jquery.easyui.min.js 压缩后出现各种脚本错误,总是莫名其妙的 i标量错误 ...

  9. .net mvc System.Web.Optimization 、System.Data.Entity.Infrastructure找不到

    在MVC4的开发中,如果在App_Start目录下BundleConfig.cs类没有找不到引用System.Web.Optimization,可以使用程序包管理控制台进行安装到使用的项目 打开 工具 ...

随机推荐

  1. 【BZOJ】【1430】小猴打架

    排列组合 蛮逗的…… 这题题干描述的就一股浓浓的Kruskal的气息……很容易就想到是求一个n个点的完全图的生成树个数,然后由于有序,再乘一个n-1的排列数(n-1条边的全排列)即(n-1)! 但是我 ...

  2. [bzoj 2159]Crash的文明世界

    今天看到一个鬼题 心情好的时候写 [题意]求树上所有点对距离的k次方和,所有边权为1 大爷方的题解:http://tonyfang.is-programmer.com/posts/204972.htm ...

  3. 使用静态变量的方法求n!

    下面的程序可以输出1-5的阶乘值,如果需要把5改为n,则可求出1-n的阶乘值. void main() { setvbuf(stdout,NULL,_IONBF,); int fac(int n); ...

  4. CentOS 6.4 搭建SVN服务器

    SVN作为新一代代码版本管理工具,有很多优点,管理方便,逻辑明确,安全性高,代码一致性高.SVN数据存储有两种方式,BDB(事务安全表类型)和FSFS(一种不需要数据库的存储系统),为了避免在服务器连 ...

  5. java基础知识回顾之java Thread类学习(九)--wait和notify区别

    wait和sleep区别:  相同点:调用wait,sleep方法都可以是线程进入阻塞状态,让出cpu的执行权. 不同点:1.sleep必须指定时间,但是wait方法可以指定时间,也可以不指定时间. ...

  6. Java中LinkedList的remove方法真的耗时O(1)吗?

    这个问题其实来源于Leetcode的一道题目,也就是上一篇日志 LRU Cache.在使用LinkedList超时后,换成ArrayList居然AC了,而问题居然是在于List.remove(Obje ...

  7. jQuery动画效果实现

    <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content ...

  8. 【mongoDB高级篇②】大数据聚集运算之mapReduce(映射化简)

    简述 mapReduce从字面上来理解就是两个过程:map映射以及reduce化简.是一种比较先进的大数据处理方法,其难度不高,从性能上来说属于比较暴力的(通过N台服务器同时来计算),但相较于grou ...

  9. mvn 安装ojdbc6.jar

    mvn install:install-file -DgroupId=com.oracle -DartifactId=ojdbc6 -Dversion= - Dpackaging=jar -Dfile ...

  10. Java学习笔记之:Java 继承

    一.引言 继承是java面向对象编程技术的一块基石,因为它允许创建分等级层次的类.继承可以理解为一个对象从另一个对象获取属性的过程. 如果类A是类B的父类,而类B是类C的父类,我们也称C是A的子类,类 ...