摘要:[Show Call Stack][event] Object reference not set to an instance of an object.
有次為了要使用事件取得回傳值,於是使用了 Func<>宣告事件 GetResult,
之後我在Combox的SelectedIndexChanged事件上撰寫檢查事件回傳值代碼:
if ( GetResult() == enumoption.Succeed )
{
}
看上面很簡單只是取得回傳值判斷是否等於這個列舉值,
但是Visual Studio給我報錯誤:
而問題就出現在於 GetResult 有可能沒有被訂閱,直接引發事件是可能會出錯的,就代表 GetResult == null,所以正確的作法如下:
if ( GetResult != null && GetResult() == enumoption.Succeed )
{
}
這觀念算很重要,突然忘記卡了很久在這個錯誤訊息上。