Asp.net Server.GetLastError 没有行号
Asp.net Server.GetLastError don't have line number
当我查看 try/catch 的堆栈跟踪时,我有一行代码抛出异常。
如果我不管理 try/catch 重定向到自定义页面并使用 Server.GetLastError
获得我的最后一个异常,我有一个不同的堆栈跟踪。
例如:
使用 try catch 我有我的线路参考
没有 try catch,我的自定义页面上什么也没有
我也试过了
Dim ex As Exception = Server.GetLastError.GetBaseException
Dim trace As New Diagnostics.StackTrace(ex, True)
如另一个 post 中所建议,但不起作用。我错了什么?
我就是这样解决的:
Dim ex As Exception = Server.GetLastError()
Dim StackTraces As New Diagnostics.StackTrace(ex.InnerException, True)
Dim StackFrame = Nothing
For Each StackFrame In StackTraces.GetFrames()
If (StackFrame.GetFileColumnNumber() > 0) Then
Exit For
End If
Next
当我查看 try/catch 的堆栈跟踪时,我有一行代码抛出异常。
如果我不管理 try/catch 重定向到自定义页面并使用 Server.GetLastError
获得我的最后一个异常,我有一个不同的堆栈跟踪。
例如:
使用 try catch 我有我的线路参考
没有 try catch,我的自定义页面上什么也没有
我也试过了
Dim ex As Exception = Server.GetLastError.GetBaseException
Dim trace As New Diagnostics.StackTrace(ex, True)
如另一个 post 中所建议,但不起作用。我错了什么?
我就是这样解决的:
Dim ex As Exception = Server.GetLastError()
Dim StackTraces As New Diagnostics.StackTrace(ex.InnerException, True)
Dim StackFrame = Nothing
For Each StackFrame In StackTraces.GetFrames()
If (StackFrame.GetFileColumnNumber() > 0) Then
Exit For
End If
Next