1
我有以下類。如何獲得空參考分析結果到日誌文件中
class Tim
{
public Tim()
{
}
public Tom GetTom()
{
return new Tom();
}
}
class Tom
{
public Tom()
{
}
public Jim GetJim()
{
return new Jim();
}
}
class Jim
{
public Jim()
{
}
public Jom GetJom()
{
return null;
}
}
class Jom
{
public Jom()
{
}
public string GetMagicString()
{
return "Hello World";
}
}
它的用法如下。
class Program
{
static void Main(string[] args)
{
new Tim().GetTom().GetJim().GetJom().GetMagicString();
}
}
當我運行它,一個空引用異常被拋出如下新的空引用分析在新的異常助手精美結果表明。
這是偉大的,因爲它清楚地表明我這方法調用這個鏈條負責例外。但是,如果這段代碼在字段中運行,我還想在日誌文件中記錄此錯誤。爲此,當我在捕獲塊中捕獲NullReferenceException時,我沒有收到有關返回null的方法的信息。這是否僅在VS異常助手對話框中可用,並且此時不能記錄?
您可以詳細說明與Visual Studio調試器功能相當的儀器代碼嗎?我的意思是如何做到這一點,並鏈接到任何示例/樣本。 –
@ jimcrown:對不起,我不能詳細說明。這將是一個令人難以置信的廣泛問題,不僅僅是編寫一個全新的調試器,而且還增加了這個高級功能(我不知道VS團隊如何實現它......最有可能的是他們利用了現有的IntelliTrace功能,或者他們現在做一些實際的代碼檢查/反編譯追溯以查找空引用的來源)。 –