Asp.net Visual Studio开发服务器未更新css和javascript?

Asp.net Visual Studio开发服务器未更新css和javascript?,asp.net,cassini,Asp.net,Cassini,我最近返回了一个位于backburner上的网站项目。自从重新开始工作以来,我注意到在VisualStudioDevelopmentServer中运行的应用程序无法识别css和javascript更改。这以前效果不错。我可以更改样式表和javascript,并运行应用程序和测试。现在,我测试应用程序的唯一方法是将其发布到本地IIS服务器(尽管我相信重新启动电脑也可以解决问题) 使用Visual Studio 2008(9.0.30729.1) 自从我确信它正常工作以来,发生了变化的是操作系统,从

我最近返回了一个位于backburner上的网站项目。自从重新开始工作以来,我注意到在VisualStudioDevelopmentServer中运行的应用程序无法识别css和javascript更改。这以前效果不错。我可以更改样式表和javascript,并运行应用程序和测试。现在,我测试应用程序的唯一方法是将其发布到本地IIS服务器(尽管我相信重新启动电脑也可以解决问题)

使用Visual Studio 2008(9.0.30729.1)

自从我确信它正常工作以来,发生了变化的是操作系统,从Vista x64 Home Premium Edition到Win 7 x64 Ultimate,我将项目源代码从c:移到了d:。虽然我回到了C:同样的负面结果。我还将一些功能转移到单独的WCF服务中,这些服务由控制台应用程序(两个服务主机)托管,当网站在调试中启动时,这些应用程序将被放入调试中

停止dev服务器没有任何作用。 签出(使用VSS 2005)所有文件以确保无任何内容为只读不会产生任何效果。 唯一有效的方法是发布到IIS或重新启动我的计算机。两者都不可取。 如果每次停止调试时都需要终止某个进程,以确保不使用以前的副本,我甚至会感到满意


有解决方案吗?

服务器可能正在向浏览器发送标题,导致其继续使用缓存副本。测试这一点的简单方法是

如果这可以解决问题,那么您需要研究从服务器获得的数据。您选择的浏览器中的(也称为)将公开服务器返回的标题。然后决定是继续使用这些缓存设置()还是更改它们()

你会问,如何调整这些标题?这取决于服务器。以下是指向通用服务器说明的链接:


一种快速方法是在脚本或css文件的src属性之后添加随机参数。 比如说

<script type="javascript" src="@Url.Content("~/scripts/myScripts.js?" + DateTime.Now.ToString("ddMMHHmmss")"></script>

所以浏览器总是假定它是一个新文件,而不会缓存

在live server上部署时,请确保删除此选项。

尝试使用


连同包裹一起。这对我来说很有用

如果你总是想得到最新版本的js和CSS文件,你可以修改你的静态文件中间件,比如

app.UseStaticFiles(new StaticFileOptions()
{
    OnPrepareResponse = context =>
    {
        context.Context.Response.Headers.Add("Cache-Control", "no-cache, no-store");
        context.Context.Response.Headers.Add("Expires", "-1");
    }
});
或者您可以将
asp append version=“true”
添加到文件引用中,如:

<link rel="stylesheet" href="~/css/site.css" asp-append-version="true"/>


谢谢!清除浏览器缓存修复了该问题。我希望我三天前就尝试过:)一种更简单的方法是在浏览器中按CTRL+F5键这对我不起作用。使用4种不同的浏览器进行测试。清空了他们所有人的缓存。按CTRL+F5的次数超过我的计数。Asp.net开发服务器只是不想使用任何标记/css/javascript更改进行更新。停止和启动测试服务器是使其识别更改的唯一方法。是的,这为我修复了它,但在调整CSS时,这似乎是一个笨拙的解决方案。我应该看的标题是什么?我该如何改变them@WarrenYoung-我的问题是,我正在尝试调整我的CSS,并且必须不断清除缓存以加载新的CSS。因此,如何更改标题以使其停止执行此操作即使有手动解决方法(Ctrl+F5),我仍然创建了一个Microsoft Connect问题,以尝试让IDE开发环境自动执行这些步骤。请看这里: