加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

asp.net-mvc – ASP.NET MVC:将会话状态保存在类似向导的应用程

发布时间:2020-12-16 03:29:02 所属栏目:asp.Net 来源:网络整理
导读:假设我有一个Web应用程序实现像一组向导页面来编辑复杂对象.在用户单击“完成”按钮之前,对象不会保存到后端系统(需求),因此在此期间我必须在某种会话状态下保留有关对象的全部信息. 此外,某些向导页面必须显示具有可能大量项目的组合框和列表框.使用Web服务
假设我有一个Web应用程序实现像一组向导页面来编辑复杂对象.在用户单击“完成”按钮之前,对象不会保存到后端系统(需求),因此在此期间我必须在某种会话状态下保留有关对象的全部信息.

此外,某些向导页面必须显示具有可能大量项目的组合框和列表框.使用Web服务从后端系统获取这些项目.

巧合的是,该向导允许用户从一个向导页面自由跳转到任何其他页面(使用表单顶部的选项卡链接),因此它不是一个简单的“下一个,下一个…完成”的事情.

附加约束:Web应用程序在Web场上运行,客户厌倦了使用服务器端会话状态.在最好的情况下,他们希望将会话状态的大小保持最小(过去他们遇到了问题).

所以基本上这里有两个问题:

>如何/在何处保存用户在向导中输入的数据?
>是否缓存从后端收到的组合/列表项,如果是,在哪里?

我正在考虑的选项:

>将对象存储在类似WebForms的ViewState中(通过将其序列化到HTML页面中).这还包括组合框项目.显然,HTML页面可能会变得非常大,因此Web应用程序会很慢.
>将其存储到服务器端会话状态,无论客户的意愿如何,并且在实际Web场(项目后期)上进行测试之前,不知道性能将如何受到影响.

我不能在两者之间作出决定.或者还有另一种选择吗?

解决方法

为什么要缓存?您可以只使用选项卡页面,其中每个页面都是div或面板,只显示与选项卡相关的当前div.这样,当用户提交表单时,您无需跟踪和处理所有输入.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读