当服务的修改了js和css内容后,发布到IIS服务器上,总是导致客户端内容显示不正确,原因是客户端存在缓存,还是加载的原来的js和css问题。

  在css或js后面添加版本号,例如:

<script src="1.js?v=1.0"></script>

  当版本号改变时,客户端会重新读取新的文件,问题解决了。

  但同时也带了另一个问题,每次修改后,都必须修改版本好,如果引用比较多的化,那么工作量也比较大,同样是个问题。

  

  这里解决方法是配置一个版本号

  步骤一:在web.config中配置版本号:

  <appSettings>
<add key="JsVersion" value="20161123.2"/>
</appSettings>

  步骤二:写一个扩展方法

using System;
using System.Collections.Generic;
using System.Configuration;
using System.Linq;
using System.Web;
using System.Web.Mvc; namespace WebSeat.Site.Member.Helper
{
/// <summary>
/// 说明:
/// 创建日期:2016/11/23 10:36:01
/// 创建人:曹永承
/// </summary>
public static class HtmlHelperExtend
{
/// <summary>
/// 给CSS文件或JS文件指定版本号
/// </summary>
/// <param name="helper"></param>
/// <param name="url">CSS或JS路径</param>
/// <returns></returns>
public static string GetCssJsUrl(this HtmlHelper helper, string url)
{
string version = ConfigurationManager.AppSettings["JsVersion"];
version =version == null ? "1.0" : version;
return url += "?v=" + version;
}
}
}

  步骤三:改变js和css引用方法

<link href="@Html.GetCssJsUrl("/Content/custom/areaHome.css")" rel="stylesheet"/>
<script src="@Html.GetCssJsUrl("/Scripts/custom/AreaHome.js")"></script>

  可以看到css和js文件自动加上了版本号

asp.net mvc处理css和js版本问题的更多相关文章

  1. Windows server 2008 IIS7发布asp.net mvc网站css、js脚本无法访问 问题解决

    今天发布网站遇到一个感到很无语的问题,网站发布成功,浏览网站内容数据显示正常,就是没有样式,试了下脚本也是没有反应,如图效果: 接下来就是一顿苦找原因,检查iis设置.什么应用程序池.文件路径等各种检 ...

  2. ASP.NET MVC 4 RC的JS/CSS打包压缩功能 (转载)

    ASP.NET MVC 4 RC的JS/CSS打包压缩功能 打包(Bundling)及压缩(Minification)指的是将多个js文件或css文件打包成单一文件并压缩的做法,如此可减少浏览器需下载 ...

  3. Asp.net 后台添加CSS、JS、Meta标签

    Asp.net 后台添加CSS.JS.Meta标签的写法,我这里写成函数方便以后使用.如果函数放在页面类中, Page参数也可以不要. 首先导入命名空间 using System.Web.UI.Htm ...

  4. Asp.net Mvc模块化开发之“部分版本部分模块更新(上线)”

    项目开发从来就不是一个简单的问题.更难的问题是维护其他人开发的项目,并且要修改bug.如果原系统有重大问题还需要重构. 怎么重构系统不是本文探讨的问题,但是重构后如何上线部署和本文关系密切.这个大家可 ...

  5. ASP.NET 打包多CSS或JS文件以加快页面加载速度的Handler

    ASP.NET 打包多CSS或JS文件以加快页面加载速度的Handler, 使用<link type="text/css" rel="Stylesheet" ...

  6. ASP.NET MVC之Bundle压缩JS和CSS

    介绍Bundle之前先引用<淘宝技术这十年>中一段话,对Web前端稍微有点常识的人都应该知道,浏览器下一步会加载页面中用到的CSS.JS(JavaScript).图片等样式.脚本和资源文件 ...

  7. ASP.NET MVC 4 Optimization的JS/CSS文件动态合并及压缩

    JS/CSS文件的打包合并(Bundling)及压缩(Minification)是指将多个JS或CSS文件打包合并成一个文件,并在网站发布之后进行压缩,从而减少HTTP请求次数,提高网络加载速度和页面 ...

  8. ASP.NET MVC 4 RC的JS/CSS打包压缩功能 Scripts.Render和Styles.Render

    打包(Bundling)及压缩(Minification)指的是将多个js文件或css文件打包成单一文件并压缩的做法,如此可减少浏览器需下载多个文件案才能完成网页显示的延迟感,同时通过移除JS/CSS ...

  9. ASP.NET MVC 中CSS JS压缩合并 功能的使用方法

    通过压缩合并js文件和css文件,可以减少 服务器的响应 次数和 流量,可以大大减小服务器的压力,对网站优化有比较明显的帮助!压缩合并 css 文件和js文件是网站优化的一个 比较常用的方法. ASP ...

随机推荐

  1. [eclipse] Server at localhost was unable to start within 45 seconds.

    When debuging in the eclipse with Tomcat, i meet these error: Server Tomcat v7.0 Server at localhost ...

  2. [firefox]在Debian7及其衍生版下安装firefox

    Easy way to install Firefox browser on Debian 7 wheezy Debian by default comes with Iceweasel web br ...

  3. [2]R语言在数据处理上的禀赋之——可视化技术

    本文目录 Java的可视化技术 R的可视化技术 二维做图利器plot的参数配置 *权限机制 *plot独有的参数 *plot的type介绍 *title介绍 *公共参数集合--par *par的权限机 ...

  4. imail 删除历史邮件命令

    删除旧的邮件(immsgexp.exe)Immsgexp.exe 可以让管理员删除指定天数的旧的邮件.基本语法 immsgexp -t startdirectory -d #of_days_to_sa ...

  5. Java-简陋的图书管理

    本文代码为原创一个简陋的管理系统,只做功能的测试.并没有去完善所有应有的功能,只做了输入输出查找.仅供参考! 菜单部分: import java.util.Scanner; public class ...

  6. centos7 gradle

    cd /usr/local wget https://downloads.gradle.org/distributions/gradle-2.13-bin.zip unzip gradle-2.13- ...

  7. python走起之第三话

    一. SET集合 set是一个无序且不重复的元素集 class set(object): """ set() -> new empty set object set ...

  8. 《BI项目笔记》创建多维数据集Cube(2)

    本节建立: 历年的初烟水分均值变化分析Cube:区域维度:地州,专县时间维度:年等级维度:大等级,小等级指标:水分均值 数据源视图: 数据处理: ) ) DELETE FROM T_QualMoist ...

  9. <hr/> 水平线样式

    <hr style="width:490px;" /> <hr size=8 style="COLOR: #ffd306;border-style:ou ...

  10. JavaScript中的String

    1.基本类型String var str ="helloworld"; 要记住:保存的是Unicode字符,一旦创建便不可变   2.引用类型String var strObj = ...