如何解决我下载一次后IIS不刷新文件?
我们有一个 asp.net 网站,有一个名为 templates 的文件夹,其中包含 Summaries.xlsx
和 Totals.txt
。该网站有一个链接供用户查看这些文件。
将 Summaries.xlsx
下载到我的 PC 后(即副本已下载到我的本地下载文件夹),我决定编辑网站设置的原始文件。即使在 IIS
文件夹中编辑并保存后,我仍在下载没有更改的旧版本。
另一方面,只要我编辑了文本文件(显示在浏览器中并且没有“下载”到我的本地下载文件夹),我就会看到更新。 >
如果我从服务器上删除两个文件,同样的事情会发生:我仍然可以下载 Excel 文件(不存在的),但 txt 文件将显示 404 错误。
我知道这是一个缓存问题,但我不能要求所有用户清除他们的浏览器缓存。
我尝试了此 forums.iis.net 链接中的解决方案,但没有帮助。
我也尝试过回收应用程序池,但一无所获。
最后,我安装了 Application Request Routing Cache
,但在“操作”窗格中没有看到 Delete All Cached Objects
。
解决方法
假设 asp:HyperLink
在内容页面中。您可以创建一个 javascript 函数并在 NavigateUrl
属性中调用它
<asp:Content ID="BodyContent" ContentPlaceHolderID="MainContent" runat="server">
<script type="text/javascript">
function DownloadFile(url) {
document.location.href = url + "?dt=" + (new Date()).getTime();
}
</script>
<asp:HyperLink runat="server" NavigateUrl="javascript:DownloadFile('/Templates/Summaries.xlsx')"> Summaries </asp:HyperLink>
</asp:Content>
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。