我目前在asp.net中使用listview。当我点击搜索时,它会显示多个列。当我转到另一个页面,然后返回到原始页面,有没有办法保持原始ListView的状态,以便用户不必再次搜索?
我最初的想法是使用AJAX工具,但我不确定如何处理它?</ p>
谢谢!
答案 0 :(得分:1)
您必须通过后端代码执行此操作,并且取决于您如何设置视图的数据源。如果要在后端填充视图的数据源;与数据集一样;然后您可以在会话中缓存数据集。
下次在访问页面之前,在填充数据集之前检查会话对象是否存在,如果存在,请从会话中获取数据集并将其分配回列表视图。
更有效的内存方法是将搜索参数存储在会话中,而不是整个数据集中。 Onpageload如果搜索参数在会话中,则提取它们并使用它们自动运行搜索。然后,您还可以将值分配回表单上的过滤器字段(如果有)。
答案 1 :(得分:1)
我将搜索参数保存在&#39; UsersSearchtbl&#39;在我的数据库中,每次第一次点击搜索页面时都会返回参数。这样,当用户离开网站并返回时,您可以显示最后一次搜索(如果有用)。