ASP.Net会话变量 - 与Cache挣扎

时间:2011-06-30 18:29:21

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

我正在使用一些会话变量来存储和传递ASP.Net应用程序的多个页面上的数据。但是这种行为有点不可预测。我正在设置会话变量post page_load,如下所示

Protected Sub Page_LoadComplete(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.LoadComplete
If (Session.Item("ScholarshipID") = Nothing) Then
    Session.Add("ScholarshipID", "Summer2011")
End If

好的,在正常页面加载时很好。如果用户完成表单操作,点击下一页,并决定OH NO,我需要更改字段xyz,然后单击返回,更正数据,然后提交,会话变量显示为NULL。为什么缓存会话会以这种方式运行?我不是在破坏/清除变量,除非我不理解会话变量的范围。

1 个答案:

答案 0 :(得分:0)

尝试

If (IsNothing(Session("Scholarship"))) Then
     Session("Scholarship") = "Summer2011"
End If