正确使用stacktrace进行调试
本文关键字:调试 stacktrace | 更新日期: 2023-09-27 18:27:43
以下代码行导致异常
plug.Instance.AddDocuments(new Int32[] { val_pid }, val_ptype, val_doccat, val_subcat, val_doctype, val_notes, val_summary, SummaryAppendOptions.None, val_docStatus, new String[] { PDFFile })
这是一个例外的细节。
System.Exception was caught
Message=Object reference not set to an instance of an object. - Error when trying to save document
Source=SimsBridge
StackTrace:
at SimsBridge.Bridge.AddDocuments(Int32[] personIds, Int32 PersonType, String docCatagory, Int32 subCatagory, String docType, String notes, String summary, SummaryAppendOptions summaryOptions, String documentStatusCode, String[] filePaths)
at ManagedScanDesktop.Form1.SimsScanComplete(String[] files) in C:'Working'ManagedScanDesktop 1.8'v1.8'ManagedScanDesktop'ManagedScanDesktop'Form1.cs:line 2619
InnerException:
我不是在寻找解决实际异常的方法。
我的问题是,stacktrace是否指向该方法的哪个部分没有引用集?还是stacktrace只是为了跟踪方法的调用位置?
当抛出异常时,堆栈跟踪会显示调用堆栈。根据您提供的内容,您只能推断出从AddDocuments
引发了异常。传入的任何引用类型参数都可能为null。找出问题的最佳方法是设置断点,然后检查值。
堆栈跟踪意味着SimsBridge或SimsBridge.Bridge为null。
消息告诉您,在AddDocuments
中的某个位置引发了null引用异常。它可以是其中一个参数或一个成员。