我try 了这个中间件,但浏览器仍在保存文件.

我希望用户将总是得到最新版本的js和CSS文件.

public void Configure(IApplicationBuilder app)
{
    app.UseSession();
    app.UseDefaultFiles();
    app.UseStaticFiles(new StaticFileOptions
    {
        OnPrepareResponse = context =>
            context.Context.Response.Headers.Add("Cache-Control", "no-cache")
    });
}

推荐答案

还可以try 添加一个Expires页眉:

app.UseStaticFiles(new StaticFileOptions()
{
    OnPrepareResponse = context =>
    {
        context.Context.Response.Headers.Add("Cache-Control", "no-cache, no-store");
        context.Context.Response.Headers.Add("Expires", "-1");
    }
});

另一种方法是添加一个查询字符串,在开发中更改请求的结尾.在这种情况下,不需要中间件.

<environment names="Development">
    <link rel="stylesheet" href="~/lib/bootstrap/dist/css/bootstrap.css?@DateTime.Now.Ticks" />
    <link rel="stylesheet" href="~/css/site.css?@DateTime.Now.Ticks" />
</environment>

Asp.net相关问答推荐

目前不支持超过 65534 个段的跨区存档

在每个对象上设置 ClientIDMode = Static 是否有任何缺点(在母版页的 maincontent 上设置)

RNGCryptoServiceProvider - 随机数审核

在正则表达式中允许 -(破折号)

Azure 自定义控制器/API .Net 后端

AppendHeader 是否与 AddHeader 完全相同?

ASP.NET Response.Redirect 使用 302 而不是 301

如何从 web.config 中读取系统值并在 ASP.NET MVC C# 方法中使用

如何在 Visual Studio 2017 中使用 NPM 并安装包?

在 Asp.net mvc5 中使用用户名而不是邮箱作为身份

如何在 ASP.NET 下拉列表中添加选项组?

在 ASP.NET 中使用 Messenger Connect 客户端库时出现 Javascript 错误

显示 ModalPopupExtender 时如何指定要运行的 javascript

在 Asp.Net Core 中动态更改连接字符串

将 HTML 字符串转换为图像

IIS 是否执行非法字符替换?如果是这样,如何阻止它?

在 Visual Studio 2013 中更改项目端口号

如何使用 WebAPI 处理图像

使用 FileUpload Control 获取文件的完整路径

jQuery Ajax 调用 - 成功设置变量值