我有一个需要一段时间才能执行的查询。数据被发送到视图上的网格,并且一些过滤条件可以从视图发送到控制器。我不想在每个过滤器期间重新查询数据库。有没有办法将第一次查询执行时加载的数据存储在某个结构中,然后对该数据进行过滤?我正在考虑使用像ViewData或ViewBag这样的东西,但在这种情况下,这些似乎不会持久。
或者有没有其他方法可以实现这一点,而无需每次都从数据库中获取数据?
我使用的是ajax而不是服务器绑定,因为需要一段时间的查询。我希望能够在查询未执行时显示页面。
答案 0 :(得分:0)
您必须在服务器上的某个位置缓存数据,无论是使用ASP.NET输出缓存,ASP.NET状态服务器还是第三方缓存解决方案(如memcached)。然后,当您执行AJAX查询时,您将从缓存而不是数据库中获取数据。
答案 1 :(得分:0)
实际上你可以使用viewModel和knockout.js
来完成