在记录之前清除
回答
创建一个if condition
来检查登录帐户。然后使用此reference中的代码清除缓存,如果它满足条件。
使用此代码,您可以清除浏览器缓存。
您也可以在您的网站的LogOut
而不是login
上使用它。
Response.Cache.SetExpires(DateTime.UtcNow.AddMinutes(-1));
Response.Cache.SetCacheability(HttpCacheability.NoCache);
Response.Cache.SetNoStore();
或者你也可以做到这一点的方式
https://stackoverflow.com/a/2876701/2218635
您可以通过这种方式定义缓存
HttpContextBase的HttpContext = filterContext.HttpContext; httpContext.Response.AddCacheItemDependency(“Pages”);
和设置缓存时登录
protected void Application_Start()
{
HttpRuntime.Cache.Insert("Pages", DateTime.Now);
}
和清除缓存时注销
HttpRuntime.Cache.Insert("Pages", DateTime.Now);
详情
这并不能清除浏览器缓存。它为您当前正在生成的页面设置缓存策略,浏览器缓存中的某些内容在消耗新的网页后仍会保留在浏览器缓存中。 –
@GaryWalker我已经更新了我的答案,请现在看看哥们 –
您无法编写代码来清除客户端浏览器缓存。您可以在首次将日期发送到浏览器时为数据设置控制缓存策略。例如,如果您最初有一个图像文件,并且在浏览器检索到该图像文件时到期时间午夜,浏览器将不会在午夜之前将文件从其缓存中删除。如果您需要立即强制浏览器获取不同版本的文件,则URI必须更改 - 即将该文件重命名为新的(版本2)名称。
您只能控制发送给浏览器(或介入代理服务器,或两者)的项目的缓存策略。浏览器可以忽略策略(如果它想成为一个非常糟糕的浏览器),但不能发送任何可以清除预先存在的浏览器缓存的内容。
策略(在http头文件中)设置诸如过期时间(GMT),相对时间(即缓存持久化)以及no-cache指令。您可以将其设置为浏览器缓存(或代理和共享缓存)。但一旦它通过电线,你不能清除它。
ADDED
我花了一段时间来找到this article explaining how browser caching works。比W3C更容易理解浏览器缓存的说明
- 1. Bunyan记录器在记录之前清理信息
- 2. 触发器在删除记录之前
- 3. 如何在保存记录之前清理数据(删除html标签)?
- 4. 清除之前的css
- 5. 清除之前的Alexa卡
- 6. 在追加之前清除div
- 7. 清除继承:在css之前
- 8. 如何在写入之前清除.txt?
- 9. 清除列表还会清除Java中以前的列表记录
- 10. 在表中插入记录之前/之后删除旧记录,如果记录数大于2
- 11. 在rhapsody中清除历史记录
- 12. DB2 - 在删除之前如何测试记录是否存在
- 13. 谷歌地图在放置新标记之前清除所有标记
- 14. 在插入新记录之前检查记录的存在
- 15. 在某个日期之前删除记录
- 16. Rails has_one build_association在保存之前删除记录
- 17. 在链接之前从表中删除不匹配的记录
- 18. 如何在Stata之前删除所有观察记录?
- 19. 在插入之前删除SQL服务器表中的记录
- 20. 如何在删除记录之前显示确认框
- 21. 在删除记录之前检查规则违规
- 22. 查看重复记录的记录,创建新记录之前
- 23. 访问之前,当前记录数记录
- 24. 在处理之前记录异常
- 25. 在DB写入记录之前休眠
- 26. 在Laravel更新之前查看记录
- 27. MapBox清除所有当前标记
- 28. Powershell清除历史不会清除历史记录
- 29. 清除pushState创建的清除历史记录
- 30. 活动记录 - 查找在今天之前created_at的记录
清除哪个缓存 - 这是很多或不同类型的缓存 –
http://stackoverflow.com/questions/4757733/how-can-i-programmatically-clear-cache –
Gary..client缓存 – user2483797