【问题标题】:Comparing Viewstate and SessionState比较 Viewstate 和 SessionState
【发布时间】:2010-07-07 17:13:14
【问题描述】:

我将 ViewState["zzz"] 和 Session["zzz"] 设置为同一个字符串。

当我使用 == 进行比较时,我得到了错误。

当我执行 ViewState["zzz"].Equals(Session["zzz"]) 时,我得到了正确的结果。

在调试器中,它们的值都显示相同的字符串,当我这样做时

? ViewState["zzz"] == Session["zzz"]

我错了。

我认为 ViewState StateBag Item 默认为设置值,Session Item 也默认为该值?

【问题讨论】:

    标签: c# asp.net viewstate session-state


    【解决方案1】:

    由于 ViewState 和 Session 都在存储对象,因此您必须在比较之前将它们强制转换为 string,否则您将得到一个引用比较,而不是调用重载字符串运算符 ==。

    (string) ViewState["zzz"] == (string) Session["zzz"]
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-13
      • 2014-06-12
      • 2010-12-01
      • 1970-01-01
      • 2011-04-20
      • 2014-09-17
      相关资源
      最近更新 更多