gpt4 book ai didi

asp.net - 如何在 ASP.NET 中缓存对象列表

转载 作者:行者123 更新时间:2023-12-02 21:13:06 25 4
gpt4 key购买 nike

我在 asp.net 页面中有一个对象列表。当页面首次在浏览器中加载时,我从数据库中获取数据,使用这些数据创建对象并填充列表。所有这些都是在页面加载事件处理程序内完成的。现在,当页面被发布回页面时,之前的列表就消失了,因为变量都被释放了。

如何缓存该列表,以便在回发此页面时,我的所有对象都可用?

最佳答案

正如 @Eilon 所问,此数据是特定于用户的还是特定于站点的?

如果数据是特定于用户的,您可以使用 session 状态来存储它,但是当用户 session 结束时它将过期,并且在某些情况下仍然可以调用到数据库服务器的往返(例如,如果它由SQL 服务器而不是在进程内,等等)。

如果数据是应用程序范围内的,您还可以使用 Application Cache 。它是站点范围内的,驻留在进程域中,因此可供在该服务器上进行 session 的每个人使用。在多服务器场景中使用此功能时必须特别小心,但它很容易做到。

应该注意的是,如果设置需要时间,应用程序缓存(以及任何其他全局设置)可能会导致第一个用户访问该网站时应用程序加载速度变慢。 IIS7 和 ASP.NET 已尝试通过最近发布的一个模块来解决此问题,该模块会定期唤醒您的应用程序,以确保全局缓存已预先填充或保持事件状态。

关于asp.net - 如何在 ASP.NET 中缓存对象列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2124651/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com