Konvertieren der Eigenschaften / Token eines JSON.NET-JObjects in Dictionary-Schlüssel

Ich verwende JSON.NET, um eine JSON-Antwort von openexhangerates.org-Serverseite mit .NET zu analysieren. Die Antwort enthält ein verschachteltes Objekt ("Raten") mit einer langen Liste numerischer Eigenschaften:

    {
    "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...
        }
    }

Die Eigenschaftsnamen entsprechen dem Währungstyp (z. B. "USD"). Ich muss davon ausgehen, dass sich die Liste der Eigenschaften im Laufe der Zeit ändern kann. Daher möchte ich das Objekt in ein Dictionary anstelle eines entsprechenden C # -Objekts konvertieren.

Anstatt also das JSON-Objekt in so etwas wie das folgende zu deserialisieren:

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...
}

Ich möchte damit enden:

Dictionary<string,decimal>() {{"AED",0.2828},{"AFN",0.3373},{"ALL",2.2823},{"AMD",33.378} // etc...};

Wie mache ich das ausgehend von der Antwortzeichenfolge oder von dem JObject, das durch Aufrufen von JObject.Parse (responseString) erstellt wurde?

Antworten auf die Frage(3)

Ihre Antwort auf die Frage