我想在我的css和js文件中添加一个参数,以禁止浏览器缓存特定文件。
我在index.aspx和我的c#代码中尝试了两个版本,但没有任何作用。
第一次尝试是添加DateTime.Now.Ticks,如下所示:
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="index.aspx.cs"
Inherits="_index" %>
<!DOCTYPE html>
<html lang="de">
<head runat="server">
<meta charset="UTF-8">
<title>Index Page</title>
<link rel="stylesheet" href="css/vendor/bootstrap.min.css">
<link rel="stylesheet" href="css/vendor/bootstrap-datetimepicker.min.css">
<link rel="stylesheet" href="css/vendor/sweetalert2.min.css">
<link rel="stylesheet" href="css/style.css?<%=DateTime.Now.Ticks %>">
但相关的线在渲染时显示的确如此,所以在style.css之后没有Ticks?而是aspx代码。
另一个版本是写一个UnixTimeStamp函数,它返回我的Unix时间戳:
public Int32 UnixTimeStampUTC()
{
Int32 unixTimeStamp;
DateTime currentTime = DateTime.Now;
DateTime zuluTime = currentTime.ToUniversalTime();
DateTime unixEpoch = new DateTime(1970, 1, 1);
unixTimeStamp = (Int32)(zuluTime.Subtract(unixEpoch)).TotalSeconds;
return unixTimeStamp;
}
我把它包括在内,但结果是一样的:
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="index.aspx.cs"
Inherits="_index" %>
<!DOCTYPE html>
<html lang="de">
<head runat="server">
<meta charset="UTF-8">
<title>Index Page</title>
<link rel="stylesheet" href="css/vendor/bootstrap.min.css">
<link rel="stylesheet" href="css/vendor/bootstrap-
datetimepicker.min.css">
<link rel="stylesheet" href="css/vendor/sweetalert2.min.css">
<link rel="stylesheet" href="css/style.css?<%= UnixTimeStampUTC() %>">
这再次呈现:
<!DOCTYPE html>
<html lang="de">
<head runat="server">
<meta charset="UTF-8">
<title>Index Page</title>
<link rel="stylesheet" href="css/vendor/bootstrap.min.css">
<link rel="stylesheet" href="css/vendor/bootstrap-
datetimepicker.min.css">
<link rel="stylesheet" href="css/vendor/sweetalert2.min.css">
<link rel="stylesheet" href="css/style.css?<%= UnixTimeStampUTC() %>">
在我的.aspx的其余部分,我也使用这种技术来显示一个NTLM用户并且它可以工作。
有什么建议吗?
答案 0 :(得分:0)
嘿伙计们我找到了解决方案, 也许不是最好的但它有效。
在.aspx.cs中,我编写了一个生成缓存网址的函数。这个函数也使用我上面的UnixTimeStampUTC()函数:
public String noCache(String url){
return '"' + url + "?ver=" + UnixTimeStampUTC() + '"';
}
然后我在我的.aspx中使用此功能,如下所示:
<link rel="stylesheet" href=<%= noCache("css/style.css") %>>
也许这有助于某人搜索相似的解决方案。