【发布时间】:2011-12-15 04:34:34
【问题描述】:
在 VS 2010 中,ASP.Net Web 应用程序模板创建一个包含两个内容页面的母版页:主页和关于。当您导航到新选项卡时,状态会丢失。作为一名 Windows 开发人员,我正在努力解决如何将页面返回到用户离开它们的状态。
我的客户选项卡允许用户过滤客户并从 AspxGridView 中选择一个。选定的客户 ID 将用于其他页面(选项卡)以显示相关的客户数据:联系人、发票、任务等。我想让用户在他/她离开过滤器时返回到客户选项卡,排序等仍在进行中。
我知道 cookie、查询字符串、视图状态和会话变量。但是,当用户离开时,我不知道如何从 DevExpress AspxGridView 捕获用户的过滤器和排序信息,我需要重新构建网格状态。
我是否应该将应用重新设计为一个包含每个选项卡的大页面?这将有助于维护视图状态,但它可能会失控。我的公司希望这个应用程序成为一个成熟的 CRM,我不想制造维护噩梦。
我正在寻找有关如何最好地维护 ASP.Net Web 表单应用程序中的选项卡/页面状态的建议,该应用程序可能会随着时间的推移而变得非常大。
【问题讨论】:
-
AspxGridView 是否支持 cookie?这将是要走的路,大多数数据网格都会有它。
-
这是一个很难回答的问题,因为有几种方法可以给这只猫剥皮。在您的网格示例中,您可以在用户交互时将状态持久保存到临时 cookie 或 AJAX POST 值回服务器。两者都有相同的效果..
-
AspxGridView 功能齐全,对于像我这样的新用户来说是一个挑战。我将研究 cookie 支持。我刚刚学会了如何保存/恢复布局。现在我需要弄清楚如何跟踪用户应用的过滤器和排序。
标签: asp.net webforms devexpress state-management