0

什么会导致 Visual Studios 调试器忽略 aspx 页面后面代码中的断点并从空会话变量中抛出空异常?

我一直在尝试调试会话变量超时问题,但是每次运行调试器时都会抛出空异常而不是遇到断点(我在页面加载时有断点以及应该触发回发的按钮)。

有任何想法吗?

编辑:

_reportEntity 是保存到会话变量的访问器/修改器属性:

Session["_PD_AR_reportEntity"]

此变量在用户第一次到达页面时在 Page_Load 中初始化,然后在每次回发时更新。我们将 LLBL 生成的实体类保存到会话变量中。在调试问题之前,我试图调试为什么我们的会话变量在用户不活动 20 分钟后丢失,因为我们有一个类似的模块,使用相同的技术、应用程序池和超时设置(1440 分钟)并且它不会丢失20 分钟后它的会话变量。

如果这是一个 UI 问题,我需要提出我们正在使用 Telerik AJAX 控件,我们有一个用于部分回发的 RadAjaxLOadingPanel 和一个 RadMultiPage 来处理我们的标签条。

这是来自被抛出的 Null 的信息:

Server Error in '/Project_Direct/Secure/Modules/AnalyticReports' Application.
--------------------------------------------------------------------------------


 Object reference not set to an instance of an object. 
Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code. 

Exception Details: System.NullReferenceException: Object reference not set to an instance of an object.

Source Error: 
Line 2734:            {
Line 2735:                GridDataItem item = (GridDataItem)ddl.NamingContainer;
**Line 2736:                var foundAnalyte = _reportEntity.GetReportColumns.AsEnumerable().Where(x => x["Analyte"].ToString() == item["bndAnalyte"].Text).FirstOrDefault();**
Line 2737:                //string v = item["ParameterUnitsLookup"].Text;//ParameterUnits
Line 2738:                if (foundAnalyte == null) 

Stack Trace: 
[NullReferenceException: Object reference not set to an instance of an object.]
   Trihydro.ProjectDirect.Modules.AnalyticReports.TabView.ddlAnalyteUnit_PreRender(Object o, EventArgs e) in C:\TFSWorkspaceKEllington\Trihydro_IPortal\Modules\AnalyticReports\TabView.aspx.cs:2736
   System.Web.UI.Control.OnPreRender(EventArgs e) +11056781
   System.Web.UI.WebControls.ListControl.OnPreRender(EventArgs e) +41
   System.Web.UI.Control.PreRenderRecursiveInternal() +107
   System.Web.UI.Control.PreRenderRecursiveInternal() +223
   System.Web.UI.Control.PreRenderRecursiveInternal() +223
   System.Web.UI.Control.PreRenderRecursiveInternal() +223
   System.Web.UI.Control.PreRenderRecursiveInternal() +223
   System.Web.UI.Control.PreRenderRecursiveInternal() +223
   System.Web.UI.Control.PreRenderRecursiveInternal() +223
   System.Web.UI.Control.PreRenderRecursiveInternal() +223
   System.Web.UI.Control.PreRenderRecursiveInternal() +223
   System.Web.UI.Control.PreRenderRecursiveInternal() +223
   System.Web.UI.Control.PreRenderRecursiveInternal() +223
   System.Web.UI.Control.PreRenderRecursiveInternal() +223
   System.Web.UI.Control.PreRenderRecursiveInternal() +223
   System.Web.UI.Control.PreRenderRecursiveInternal() +223
   System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +3393



--------------------------------------------------------------------------------
Version Information: Microsoft .NET Framework Version:2.0.50727.5456; ASP.NET Version:2.0.50727.5456 
4

1 回答 1

0

我要关闭它,因为我现在正在处理新任务。

我 90% 确定导致所有这些的根本问题是我们的 IIS 7 设置将我们的空闲超时设置为 20 分钟,这导致我们的会话变量死亡并导致我们的空问题导致调试器中出现这种行为。感谢您在这件事上的帮助 JWJones。

于 2012-09-21T20:24:37.557 回答