【问题标题】:Should we store business entites in viewstate variable我们是否应该将业务实体存储在视图状态变量中
【发布时间】:2012-11-28 15:20:27
【问题描述】:

我有一个业务实体,我在单个 aspx 页面上使用它。这个页面有很多控件,因此会发生很多回发。 我想知道,是否建议将此业务实体存储在视图状态(因为我需要在单个页面上)或会话(因为如果实体有更多数据,它将增加我的页面大小并因此增加网络延迟)。

【问题讨论】:

    标签: asp.net session viewstate state-management


    【解决方案1】:

    查看状态:

    为什么要使用 ViewState?它使您的页面更重。因此,您的响应时间会很短。

    会话 - 在我看来,您可以在此处使用它,但请确保在不需要或不再提及时将其删除。当您开始在会话中存储对象时,IIS 会将这些对象存储在内存中/进程中(默认)将增加,并且 IIS 处理在一段时间内会变慢。如果您的服务器具有良好的内存 32GB 内存和其他处理能力,您无需担心

    HttpContext

    HttpContext 将是在单次往返(请求/响应)之间存储对象的更好方法。因此,您可以更喜欢它而不是会话,因为它仅适用于当前请求,无需担心删除会话处理之类的对象,因为一旦请求完成,它将自动清除。

    希望这些东西对你有帮助!

    【讨论】:

      猜你喜欢
      • 2011-01-22
      • 1970-01-01
      • 1970-01-01
      • 2021-10-22
      • 1970-01-01
      • 1970-01-01
      • 2015-08-04
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多