【问题标题】:Storing dictionary in session state good or bad?在会话状态中存储字典好还是坏?
【发布时间】:2014-06-30 00:15:01
【问题描述】:

所以我有一个网页,其中包含大约 30 到 40 个不同的控件(主要是单选按钮和复选框),用户可以选择这些控件作为 IT 新设备请求的一部分。我将所有这些数据存储在字典中,然后将其传递到数据库中。

此页面上还有一个名为“下一步”的按钮,单击该按钮后会转到另一个页面,该页面会在浏览器中显示他们在上一页中选择的内容的水晶报告。这允许他们打印报告,或保存或提交给 HR。

报告页面上有“上一个”按钮,点击该按钮后,他们会回到他们选择所有不同选项的页面。

我的问题是:当我点击上一个按钮时,不同控件的选择会丢失。所以我正在考虑将我的字典添加到会话变量中,以便在单击“上一次”时,我可以保留该数据并将控件设置为他们选择的内容。

这是个好主意吗?为什么或为什么不?

还有其他方法可以保留您建议的控制数据吗?

【问题讨论】:

    标签: asp.net vb.net dictionary session-variables session-state


    【解决方案1】:

    我不建议使用 Session 来保存此类信息。

    缺点:

    1. 无法打开多个表单;
    2. 没有键入字典中的值。

    解决方案:

    1. 已将其保存在数据库中,状态为incomplete(例如,使用SessionId 进行检索);
    2. 将信息存储在ViewState 中(随页面一起移动);
    3. 使用class 并将其存储在Session 中。

    【讨论】:

      猜你喜欢
      • 2012-01-03
      • 2023-03-19
      • 2013-05-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-02-12
      • 2016-06-08
      相关资源
      最近更新 更多