2016-04-19 3 views
2

ich eine JSON deserialisieren bin versucht, die Bindestrich (-) enthält Zeichen in einigen seiner Eigenschaften Namen, durch dynamische Typen verwenden:Wenn es ungültige Zeichen in Eigenschaften Namen nach dynamic-Deserialisieren eines JSON in C#

string json = MyWebClient.DownloadString("http://api.crossref.org/works/10.1093/brain/75.2.187"); 
dynamic result = JsonConvert.DeserializeObject<dynamic>(json); 
string title = result.message.title[0]; 
string journal = result.message.container-title[0]; 

Ich kann nicht "Container-Titel" Wert aufgrund der Verwendung eines ungültigen Zeichen. Und ich möchte nicht einfach "Replace()" verwenden, um Bindestriche zu entfernen. Gibt es irgendeinen Weg?

Antwort

1

Seit message ist auch ein JObject können Sie seine Eigenschaften zugreifen wie ein Wörterbuch

result.message["container-title"] 
+1

Brilliant! Danke @Eser – Pooya

Verwandte Themen