在页面级别实现 Asp.NET 核心 2.2 会话状态或临时数据等效项



我在核心 2.2 中有一个报告 Asp.NET 该报告当前访问每页数据的数据库。我的目标是从数据库中获取大量数据(或整个数据集(,然后在屏幕上呈现时对其进行逻辑分页。

我需要我的控制器记住在 cshtml 页面持续时间内获取的内容,如果我使用会话状态或临时数据(指示记住列表(,那么在用户导航离开后,我将面临结果集被保留在内存中。

是否有我可以使用的结构,也许类似于老式析构函数?

有没有我可以使用的结构,也许是老式析构函数之类的结构?

不,没有。仅当用户连续几次访问您希望调用析构函数的页面后导航到另一个页面时,才应触发此假定的 desctructor 。没有内置机制可以以这种方式运行。

我使用会话状态或临时数据(指示记住列表(,然后在用户导航离开后面临结果集保留在内存中

是的,这就是会话的工作方式。根据结果集的大小,最终可能会在服务器内存中保留太多数据。

我的目标是从数据库中获取大量数据(或整个数据集(,然后对其进行逻辑分页

通常,满足此类要求的最佳方案是使用数据库的分页功能,其中根据单个请求从数据库获取特定页面。

这样,您就不必将大型子集存储在中间件服务器的内存中。相反,从数据库中检索单个页面,提供给客户端,并在请求完成时立即删除。

最新更新