2013-03-05 205 views
8

我正在使用JSON.net來解析我從PHP腳本獲取的對象數據。解析JSON數組對象:「最佳重載方法匹配有一些無效參數」

我能夠得到它來解析數組並打破它。然後,當我試圖在數組我得到這個錯誤中分析每個對象:

Additional information: The best overloaded method match for 
'Newtonsoft.Json.JsonConvert.DeserializeObject(string)' 
has some invalid arguments 

這是給我的錯誤的功能:

public void updateSearches() 
    { 
     var bw = new BackgroundWorker(); 

     bw.DoWork += (send, args) => 
     { 
      WebClient client = new WebClient(); 
      JSON = client.DownloadString("URL"); 
      dynObj = JsonConvert.DeserializeObject(JSON); 
      foreach (var item in dynObj) 
      { 
       dynamic search = JsonConvert.DeserializeObject(item); 
       foreach (var s in search) 
       { 
        joined += string.Join(",", s) + "END OF THE LINE\r\n"; 
       } 
      } 
     }; 

     bw.RunWorkerCompleted += (send, args) => 
     { 
      this.mainWindow.richTextBox2.Text += "Got Data!\r\n"; 
      this.mainWindow.richTextBox2.Text += joined; 
     }; 

     bw.RunWorkerAsync(); 

    } 

我剛開始學習C#昨晚,所以我很新。如果您需要更多信息,請告訴我。

+0

我編輯了你的標題。請參閱:「[應該在其標題中包含」標籤「](http://meta.stackexchange.com/questions/19190/)」,其中的共識是「不,他們不應該」。 – 2013-03-05 22:47:38

+0

哎呀,謝謝。 – 2013-03-05 22:48:49

回答

9

'JSON'是什麼類型的對象?您需要傳入一個字符串對象,以使DeserializeObject方法正常工作。

+0

JSON聲明如下:'公共字符串JSON;' – 2013-03-05 22:53:01

+6

然後它必須拋出錯誤的第二次調用DeserializeObject,而不是DeserializeObject(item)嘗試DeserializeObject(item.ToString()) – Austin 2013-03-05 23:00:51

+0

這工作!謝謝。 – 2013-03-05 23:10:27

相關問題