空例外所以我有這樣的方法在這裏:有沒有空值
public async Task<PixelData> GrabPixelData(string imageFileName)
{
if (!ImageDictionary.ContainsKey(imageFileName))
{
// doesn't exist yet, so load it
PixelData pd = await LoadPic(imageFileName);
ImageDictionary.Add(imageFileName, pd);
}
var test = ImageDictionary[imageFileName];
return ImageDictionary[imageFileName];
}
調試器說:「測試」包含類型PixelData取出的對象(與真正的,非靜態值)。
當它返回給調用方法,但是,它說,有上線一個空引用異常:
private async void LoadPic()
{
myObject.pixelData = await rootPage.GrabPixelData("obj1.png");
}
MyObject來不爲空或者(根據調試器)...
是否返回任務?
編輯:
ImageDictionary is Dictionary。
請問你給ImageDictionary的定義 – Popeye 2013-02-28 04:15:09
你在這裏的代碼片段不能編譯,因爲你不能等待void返回,並且因爲你調用的LoadPic方法不接受任何參數,以及你將這個值分配給一個'PixelData'。你有沒有顯示LoadPic方法的另一個重載? – 2013-02-28 04:25:16
@Preston:對不起,我很困惑。我調用GrabPixelData的loadPic()方法在另一個類中,並且不帶任何參數。我意識到這有點令人困惑。到目前爲止,我試圖通過添加方法來導航異步事物,所以有很多重複名稱:( – micahhoover 2013-02-28 12:27:36