Tôi đang sử dụng JSON.NET để phân tích cú pháp phản hồi JSON từ phía máy chủ openexhangerates.org bằng .NET. Câu trả lời có chứa một đối tượng lồng nhau ("lãi") trong đó có một danh sách dài các tính chất số:Chuyển đổi thuộc tính/mã thông báo của JSON.NET JObject thành các phím từ điển
{
"disclaimer": "Exchange rates provided for informational purposes only, with no guarantee whatsoever of accuracy, validity, availability, or fitness for any purpose; use at your own risk. Other than that, have fun! Usage subject to acceptance of terms: http://openexchangerates.org/terms/",
"license": "Data sourced from various providers with public-facing APIs; copyright may apply; not for resale; no warranties given. Usage subject to acceptance of license agreement: http://openexchangerates.org/license/",
"timestamp": 1357268408,
"base": "USD",
"rates": {
"AED": 3.673033,
"AFN": 51.5663,
"ALL": 106.813749,
"AMD": 403.579996,
etc...
}
}
các tên thuộc tính tương ứng với các loại tiền tệ (ví dụ "USD"). Tôi cần phải giả định rằng danh sách các thuộc tính có thể thay đổi theo thời gian, vì vậy tôi muốn chuyển đổi đối tượng thành một từ điển thay vì một đối tượng C# tương ứng.
Vì vậy, thay vì deserializing đối tượng JSON thành một cái gì đó như thế này:
class Rates
{
public decimal AED; // United Arab Emirates Dirham
public decimal AFN; // Afghan Afghani
public decimal ALL; // Albanian Lek
public decimal AMD; // Armenian Dram
// etc...
}
Tôi muốn kết thúc với điều này:
Dictionary<string,decimal>() {{"AED",0.2828},{"AFN",0.3373},{"ALL",2.2823},{"AMD",33.378} // etc...};
Làm thế nào để làm điều này bắt đầu từ một trong hai chuỗi phản ứng hoặc từ JObject được tạo ra bằng cách gọi JObject.Parse (responseString)?
bạn đã xem kết quả tìm kiếm của google về cách deserialize JSON bằng cách sử dụng C# có rất nhiều ví dụ trên internet .. http://stackoverflow.com/questions/6375122/how-to-parse-json-response- vào từ điển – MethodMan