C# 这是“船长返回”;对象引用未设置为对象的实例;

C# 这是“船长返回”;对象引用未设置为对象的实例;,c#,asp.net,webforms,C#,Asp.net,Webforms,我有一个asp.net页面,可以加载到客户的网站中。它第一次加载时很好,但当客户单击按钮时,它会崩溃,出现“对象引用未设置为对象实例”错误。日志显示错误发生在this.Master行中(见下文): 到目前为止我所知道的: 我既不能在开发环境中也不能在QA环境中重现错误 当内部页面在其上执行时,我无法重现该问题 自己的,在客户页面之外 我们的prod服务器是负载平衡的,但它不应该是会话 问题,对吗?即使我突然得到了一个全新的 会话,“this”在由Asp.Net创建时仍然不会为null 作为请求

我有一个asp.net页面,可以加载到客户的网站中。它第一次加载时很好,但当客户单击按钮时,它会崩溃,出现“对象引用未设置为对象实例”错误。日志显示错误发生在this.Master行中(见下文):

到目前为止我所知道的:

  • 我既不能在开发环境中也不能在QA环境中重现错误
  • 当内部页面在其上执行时,我无法重现该问题 自己的,在客户页面之外
  • 我们的prod服务器是负载平衡的,但它不应该是会话 问题,对吗?即使我突然得到了一个全新的 会话,“this”在由Asp.Net创建时仍然不会为null 作为请求/响应的一部分。所有自定义值都将消失, 是的,但是“这个”应该仍然存在,对吗

因此,我正在寻找解释为什么在所描述的场景中“this”会突然变为null的方法,谢谢

那是威德。你能在
\u master=(CustomMasterPage)this.master之前添加一些日志记录吗行,是否要输出“this”?另请查看页面标记,查看是否定义了@MasterType-此问题的答案进一步解释此属性-能否向我们显示内容页面的
page
指令?
protected override void OnInit(EventArgs e)
{
    _master = (CustomMasterPage)this.Master; //this is the line where exception occurs
    //...some other code
}