C# httpcontext.current.handler.master在某个时间后返回null
我在ASP.NET中遇到了一个问题。我在母版页中有一个dropdownlist,我正在使用以下代码在UI项目外部的库中访问它:C# httpcontext.current.handler.master在某个时间后返回null,c#,asp.net,.net,master-pages,httpcontext,C#,Asp.net,.net,Master Pages,Httpcontext,我在ASP.NET中遇到了一个问题。我在母版页中有一个dropdownlist,我正在使用以下代码在UI项目外部的库中访问它: Page page = HttpContext.Current.Handler as Page; if (page != null) { return page.Master.FindControl("MyDdl") as DropDownList; } 此代码正常工作。但有时,如果我保持不活动状态15到20分钟,然后导致回发(例如,单击按钮、更改
Page page = HttpContext.Current.Handler as Page;
if (page != null)
{
return page.Master.FindControl("MyDdl") as DropDownList;
}
此代码正常工作。但有时,如果我保持不活动状态15到20分钟,然后导致回发(例如,单击按钮、更改菜单等),页面的主属性将变为空。i、 e.
page.Master
开始返回空值。然后我按F5刷新页面,它又开始工作了。我也搜索了谷歌,但没有找到任何相关的答案。有人能告诉我这里发生了什么吗?您正在经历会话超时,会话已结束。有两个地方可以配置会话
首先在web应用程序web.config中,如下所示:
<configuration>
<system.web>
<sessionState timeout="30"></sessionState>
</system.web>
</configuration>
或第二次使用IIS管理器:
转到包含应用程序主要属性的选项卡,双击“会话状态”,选项卡底部显示“超时(分钟)”。此外,还可以使用其他选项更改会话状态存储
还可以使用代码检查会话状态。请看这篇文章:
快乐编码