gpt4 book ai didi

c# - 在 C# 中的页面 OnInit/OnLoad 上添加/删除 session 变量

转载 作者:行者123 更新时间:2023-11-30 20:10:41 26 4
gpt4 key购买 nike

我正在使用 C#。

我在 C# 中有以下代码:

protected override void OnInit(EventArgs e)
{
try
{
if (Session["boolSignOn"].ToString() == "true".ToString())
{
lblPanelOpen.Text = Session["panelOpen"].ToString();
}
else
{
lblPanelOpen.Text = Session["panelOpen"].ToString();
}
}
catch (Exception ex)
{
Logger.Error("Error processing request:" + ex.Message);
}
}
protected override void OnLoad(EventArgs e)
{
try
{
if (!string.IsNullOrEmpty(Session["panelOpen"].ToString()))
{
lblPanelOpen.Text = string.Empty;
Session.Remove("panelOpen");
}
}
catch (Exception ex)
{
Logger.Error("Unable to remove the session variable:" + ex.Message);
}
}

在上面的代码中,我有一个 Session["panelOpen"] 变量,它是从另一个用户控件创建的,一旦我的页面尝试呈现,我将存储 Session["panelOpen "] 在我隐藏的 lblPanelOpen.Text 页面 OnInit() 方法中,但是当页面完全加载时,我试图删除 session 变量。

请推荐!

最佳答案

好的,我想我明白了。在您的第一个方法 OnInit 中,您只检查 boolSignOn 是否为 null 或为空,但不检查 panelOpen

试试这个:

 if (Session["boolSignOn"].ToString() == "true".ToString() && Session["panelOpen"] != null)   

同时更改您的其他部分。并将您的整个代码更改为:

这里更新的是我试过的完整代码

 protected override void OnInit(EventArgs e)
{
try
{
//Change your condition here
if (Session["boolSignOn"].ToString() == "true".ToString() && Session["panelOpen"] != null)
{
lblPanelOpen.Text = Session["panelOpen"].ToString();
}
else
{
//Dont set text to panelOpen here
lblPanelOpen.Text = string.Empty;
}
}
catch (Exception ex)
{
Logger.Error("Error processing request:" + ex.Message);
}
}

protected override void OnLoad(EventArgs e)
{
try
{
if (!string.IsNullOrEmpty(Session["panelOpen"].ToString()))
{
// No need to set it here it will be set in next load in OnInit call
//lblPanelOpen.Text = string.Empty;
Session.Remove("panelOpen");
}
}
catch (Exception ex)
{
Logger.Error("Unable to remove the session variable:" + ex.Message);
}

我希望这能奏效。试一试

关于c# - 在 C# 中的页面 OnInit/OnLoad 上添加/删除 session 变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4704449/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com