我以JSON對象的形式從RESTful API獲取響應。通常情況下,當密鑰已知時,我可以解析它。舉例來說,我創建了一個User
類是這樣的:解析C#中的JSON
[DataContract]
public class User
{
[DataMember]
public string id { get; set; }
[DataMember]
public string name { get; set; }
[DataMember]
public string email { get; set; }
}
我所要做的就是拉讀取響應了我的JSON解串器,並告訴它的輸出是一個<用戶>,我好去。在提出其他請求時(如銷售數據),這一點就不足爲奇了。我回來的反應是這樣的:
{
"2010-11-24": {
"country": null,
"iso": null,
"product": null,
"downloads": 39,
"net_downloads": 38,
"updates": 6,
"revenue": "19.02",
"returns": 1,
"gift_redemptions": 0,
"promos": 0
},
"2010-11-25": {
"country": null,
"iso": null,
"product": null,
"downloads": 63,
"net_downloads": 63,
"updates": 6,
"revenue": "37.00",
"returns": 0,
"gift_redemptions": 0,
"promos": 0
}
}
如果我能該類建模爲[DataContract]
那麼我會生金,但由於第一個關鍵是到目前爲止,我不能硬編碼。
是否有一個JSON庫可以採取這種類型的響應並將其轉換爲強類型的C#類?
爲了記錄在案,我使用的是JSONHelper used in this SO question.
它們的鍵應該表示爲'string'還是'DateTime'? – svick 2012-01-09 15:32:29
我會把它作爲一個字符串或日期時間 - 沒關係。 – 2012-01-09 16:36:13