[c#]会议都为 null,但还是要内部不为空

标签: Asp.net Session C#
发布时间: 2017/2/25 3:52:16
注意事项: 本文中文内容可能为机器翻译,如要查看英文原文请点击上面连接.

我有一段代码,我在检查 Session 的值。

所以,第一次在插入行时 gridview ,我设置 session 值作为 nullPage_load

但在调试会发生什么,在这里,它仍然会内部条件时, Session 作为签not null

下面是我的代码。

int iRowCountExp = 0;      
if (Session["ExpInfo"] != null)
{   
    dtExpInfo = (DataTable)Session["ExpInfo"];

    if (strMode == "M")
    {
        FunFillGridDetails();
        dtExpInfo = (DataTable)Session["ExpInfo"];
    }
}
else
{
    BindDataTable();
}

Page_load代码

if (!IsPostBack)
{
     Session["ExpInfo"] = null;
}

解决方法 1:

Session.Remove(variableName)从字典中删除条目 (键和值)。Session[variableName] = null将值分配给键在 dictionary(Value being null )。所以的值仅为 null 和关键仍将存在。如果您删除变量使用 Session.Remove(variableName) ,然后变量将被删除,您的支票将成功。希望你得到了这一点。

因此您的代码应为︰

if (!IsPostBack)
{
     Session.Remove("ExpInfo");
}
赞助商