asp.net中的cache为啥没有被其他浏览器共享?

tonyathome 2015-10-16 10:59:15
定义了一个xml的对象,并设置到缓存,当第一个浏览器第一次访问页面时创建一个缓存,显示“new cache”,刷新后每次都显示“cached”;可是同时当另一个浏览器同样第一次访问时,却仍然显示“new cache”,为什么不能找到第一个浏览器已经缓存的内容,而是要再次创建呢?不是号称system.web.caching缓存是可以被共享访问的吗?

Dim myPageXml As XmlDocument
Dim PageCache As XmlDocument = Cache("PageXml")
If Not PageCache Is Nothing Then
myPageXmlDocument = PageCache
Response.Write("Cached")
Else
myPageXmlDocument = New XmlDocument
Cache.Insert("PageXml", myPageXmlDocument, Nothing, System.Web.Caching.Cache.NoAbsoluteExpiration, TimeSpan.FromMinutes(3))
Response.Write("New Cached")
End If
...全文
178 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
tonyathome 2015-10-21
  • 打赏
  • 举报
回复
终于找到原因了!看来解决一个问题还是需要沉下心来思考,排查需从简单到复杂...
同时也了解了asp.net中cache的使用对IIS设置的一些依赖。
tonyathome 2015-10-20
  • 打赏
  • 举报
回复
请问 @以专业开发人员为伍 , 我写的cache应用,是否遗漏了什么?是否需要定义Shared共享变量,才能让缓存内容被多浏览器共享?
tonyathome 2015-10-19
  • 打赏
  • 举报
回复
#1, 请问主机A已访问过,主机B第一次访问时,也是“已缓存”?那就奇怪了
  • 打赏
  • 举报
回复
XmlDocument可被序列化吗?没vs无法确认
  • 打赏
  • 举报
回复
无法重现你的问题。测试时它显示的是 Cached。

62,025

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧