Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/321.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# httpcontext.current.handler.master在某个时间后返回null_C#_Asp.net_.net_Master Pages_Httpcontext - Fatal编程技术网

C# httpcontext.current.handler.master在某个时间后返回null

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分钟,然后导致回发(例如,单击按钮、更改

我在ASP.NET中遇到了一个问题。我在母版页中有一个dropdownlist,我正在使用以下代码在UI项目外部的库中访问它:

 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管理器:

转到包含应用程序主要属性的选项卡,双击“会话状态”,选项卡底部显示“超时(分钟)”。此外,还可以使用其他选项更改会话状态存储

还可以使用代码检查会话状态。请看这篇文章:

快乐编码