有没有办法找到导致控件从NullReferenceException流入catch块的对象名,这样我们就可以通过提供警报或记录null的对象来轻松调试?
答案 0 :(得分:9)
没有。
您只能获得包含行号的堆栈跟踪
这可以帮助您完成这样的简单情况:
var result = myString.Trim();
但它在这样的行中没有帮助:
var result = myObj.Method1().Method2();
答案 1 :(得分:2)
对象的名称是什么?它是我们程序员的设计时令牌,它识别对象引用,但它只有在编译之前才有意义。
某些对象具有专用的Name
属性,但它不会(也不应该)与代码中对象引用的名称有任何关系,视觉设计师在Name属性之后命名对象引用是礼貌的,但这是一个惯例而不是要求。此外,null引用不能仅具有Name属性,因为引用是 null ,它尚未分配给具有可读Name的任何对象。
答案 2 :(得分:0)
那么你可以查看堆栈跟踪,反映功能,并显示参数并根据堆栈状态进行猜测,但我会说不是因为对象可能在任何地方功能。