在页面中显示.Net页面

时间:2010-07-29 13:38:41

标签: asp.net database iframe filtering

所以我创建了一个.Net网站,其中一部分是可以过滤,查询和显示数据库表的页面。然后我允许用户选择要编辑或删除的单个行。这两个功能都在各自独立的页面上执行。最近我被要求在第一页添加功能,以允许在访问之间保留查询过滤。例如,如果用户编辑了一行然后返回到该表,则他们选择的过滤器仍然应该就位。

我的问题是最简单的方法是什么。问题是许多过滤器是根据数据库中的另一个表动态生成的,因此它们不会静态编码到页面中。一种选择是在查询字符串中传递过滤器字符串,但这似乎不实用,因为它可能有很长的长度。我还考虑过打开一个新窗口,但是担心安全性和数据重复。我还可以使用iframe加载页面并隐藏原始内容,直到完成编辑,但我不确定如何从周围页面中的iframe中访问点击,或者这甚至是个好主意。

非常感谢任何帮助/建议。

谢谢!

3 个答案:

答案 0 :(得分:3)

您可以将您的功能封装到两个页面都可以使用的User Control中。

How to: Convert Web Forms Pages into ASP.NET User Controls

答案 1 :(得分:0)

您可以使用SESSION变量来存储Dictionary<string, object>或类似的内容,其中包含标识每个表的键和表示过滤器的值。实际的过滤选项不应该为给定的会话存储太多信息。

在不知道您的应用程序如何捕获过滤器的概念的情况下,提供完全合格的解决方案有点困难,但会话似乎是一个不错的选择。

答案 2 :(得分:0)

您可以将过滤器保留在用户端的cookie中。虽然不是一个完美的解决方案,但它是一种方法。