在极少数情况下,当有人访问我的某个ASP.NET应用程序时,我会收到以下错误和堆栈跟踪:
错误:未将对象引用设置为对象的实例。
Stacktrace :位于System.Web上System.Web.UI.Control.InitRecursive(Control namingContainer)的 MyApp.MyDefaultPage .Page_Init(Object sender,EventArgs e) System.Web.UI.Page.ProcessRequestMain中的.UI.Control.InitRecursive(Control namingContainer)(Boolean includeStagesBeforeAsyncPoint,Boolean includeStagesAfterAsyncPoint)
在这里确定一些事情。 MyApp.MyDefaultPage
没有我自己定义的Page_Init
因此没有其他代码(我知道该事件仍会触发)。此外,没有基类代码可以在Page_Init事件中运行,因此我不知道发生了什么。
我唯一能收集到的是我在Application_Error事件中有一个Global.asax
异常处理程序代码,但在访问任何对象之前我做的第一次是确保它们不是在尝试访问之前没有任何内容(以防止任何错误)。
有什么可能导致这种偶发性的任何线索?
答案 0 :(得分:0)
您使用的是任何Ajax控件吗?
如果是这样,请确保您的scriptmanager标记是表单标记之后的第一个项目
还尝试为页面设置EnableEventValidation =“false”。
这可能是由于用户在页面完全加载之前与页面交互造成的。