代码之家  ›  专栏  ›  技术社区  ›  R. Keller

.aspx HTML头向样式表添加UnixTimestamp无效

  •  0
  • R. Keller  · 技术社区  · 7 年前

    我在索引中尝试了两个版本。aspx和我的c#代码,但什么都不起作用。

    第一次尝试是添加DateTime.Now。滴答声如下:

    <%@ 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 %>">
    

    但是当渲染时,相关的线显示得与此完全一样,因此样式后没有刻度。css?而是aspx代码。

    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用户展示了它的工作原理。

    1 回复  |  直到 7 年前
        1
  •  0
  •   R. Keller    7 年前

    嘿,伙计们,我找到了解决办法, 也许不是最好的,但它很管用。

    英寸aspx。cs我写了一个函数来生成缓存url。此函数还使用上面的UnixTimeStampUTC()函数:

    public String noCache(String url){
      return '"' + url + "?ver=" + UnixTimeStampUTC() + '"';
    }
    

    然后,我在.aspx中使用此函数,如下所示:

    <link rel="stylesheet" href=<%= noCache("css/style.css") %>>