Was ist ein nützliches Modell, das ein Json-Objekt mit beliebigen Schlüsseln binden könnte? Angenommen, Ihre json könnte wie folgt aussehen:JSON-Modellbindung mit variablen Schlüsseln .net mvc4
{"@@hello": "address","#world": "address1","name": "address"}
oder
{"@@hello": "address","#world": "address1","firstname": "foo", "lastname":"bar"}
oder
{"@@hello": "address","#world": "address1","children": [{"name":"foo"},{"name":"bar"}]}
Das heißt also, Sie nur zur Laufzeit wissen, wie das json Modell aussieht. Mein aktueller Status ist, dass es die beste Vorgehensweise ist, das Json-Objekt als String an den Controller zu senden und die JSON-Zeichenfolge zu einem Objekt zu deserialisieren.
public ActionResult mappingNodes(string model) {
dynamic json = Newtonsoft.Json.JsonConvert.DeserializeObject(model);
}
Könnten Sie verwenden 'Dictionary'? Es ist natürlich nicht so schön wie ein Modell, aber ich denke, es wird ziemlich schwierig sein, die Eigenschaften einem Modell zuzuordnen. –
Matthew
@Matthew Das ist möglich, aber ich kann nicht den Vorteil sehen, mit Dictionary statt 'Newtonsoft.Json.JsonConvert.DeserializeObject'. – StellaMaris
Sie könnten auch Ihre eigenen Vertragsauflösung schreiben, um zu bestimmen, wie Eigenschaften zu binden sind: http://www.newtonsoft.com/json/help/html/T_Newtonsoft_Json_Serialization_DefaultContractResolver.htm – Matthew