I';我得到一个NullReferenceException(VB.Net)和don';我看不出它是从哪里来的(拥有15年经验的开发人员,可能有一个';时刻';)

I';我得到一个NullReferenceException(VB.Net)和don';我看不出它是从哪里来的(拥有15年经验的开发人员,可能有一个';时刻';),vb.net,nullreferenceexception,Vb.net,Nullreferenceexception,所有参数均为空/空/无 auditAuthSuccess(UserName, olaHelper.batchID, olaHelper.authenticatedStudentIDSite) '<-- I put a break on this line 没有非托管代码,没有其他方法等。。那么我们到底是从哪里来的NullReferenceException呢 (此处也有代码)也许您可以尝试打开Visual Studio运行时异常信息: Visual Studio>调试>例外>公共语言运

所有参数均为空/空/无

auditAuthSuccess(UserName, olaHelper.batchID, olaHelper.authenticatedStudentIDSite)  '<-- I put a break on this line
没有非托管代码,没有其他方法等。。那么我们到底是从哪里来的NullReferenceException呢


(此处也有代码)

也许您可以尝试打开Visual Studio运行时异常信息: Visual Studio>调试>例外>公共语言运行时例外>抛出=是。


关于

当抛出CLR异常时,您可以尝试中断:VS Debug->Exceptions->Check'sprown'与公共语言运行时异常位于同一行。我已经启用了此功能(并再次检查以确保)。根据输出窗口在我的web应用程序程序集中引发异常,但调试器从未因异常而实际停止。找到了它!StudentID参数在我的监视窗口中显示为“0”,但它实际上是作为“OLAHeloper.StudentID”检索并传递的,OLAHeloper是一个helper类,StudentID是一个公共共享只读属性,它引用了一个session()变量,但Get使用Try…Catch块将会话变量转换为XElement,然后使用LINQ来解决这个问题。try块内的引用正在抛出异常,但如果抛出了NRE,则整个点都将返回0(本质上提供默认值)。我并没有按照我的意愿处理一切值得一提的是,我的名声很低,因为我很少在这里,因为我很少犯这样愚蠢的错误(试图挽回面子)。谢谢你的帮助。
Public Shared Sub auditAuthSuccess(ByVal managementUserName As String, ByVal batchID As String, ByVal studentID As String)
        fooBar() '<-- I put a break here also and code halts as expected, but there's a NullReferenceException in the output window now
End Sub
OLAWeb.DLL!Comptek.OLA.frmLogin.FinishLogin(System.Web.UI.WebControls.AuthenticateEventArgs e, String UserName, String Password, String RedirectAddress, String strRoles) Line 234 + 0xc5 bytes Basic