I set ViewState[“zzz”] and Session[“zzz”] to the same string.
When I compare using == I get false.
When I do ViewState[“zzz”].Equals(Session[“zzz”]), I get true.
In the debugger, both their values show the same string, and when I do
? ViewState["zzz"] == Session["zzz"]
I get false.
I thought the ViewState StateBag Item defaults to the set value and the Session Item defaults to the value as well?
Since both ViewState and Session are storing objects, you must cast them to
stringbefore comparing, otherwise you’ll get a reference comparison instead of the overload string operator == called.