Ich habe ein dictionary<string,string>
als Teil meines Ansichtsmodells. Was ich versuche, ist dieses Objekt zyklisch zu durchlaufen und es als JSON-Objekt auszugeben. Mein Grund dafür ist, dass ich meine Client-Skriptdateien korrekt lokalisieren kann.
Die Ausgabe muss so aussehen wie
%Vor%Irgendwelche Ideen, wie man das richtig erreicht.
Vielen Dank im Voraus.
Wenn Sie sich auf mvc 3 befinden, haben Sie Zugriff auf JavaScriptSerializer. Sie sollten Folgendes tun können:
%Vor%Dies wird Ihr Wörterbuch zu json serialisieren. Sie können dies in der Steuerung vornehmen, bevor Sie die ViewData an die zu rendernde Ansicht senden.
Es ist in MVC integriert. Gib einfach Json (yourobject) zurück.
Sie können auch die kostenlose Json.NET Bibliothek in Ihren Code integrieren.
Diese Bibliothek leidet nicht unter den Problemen, die JavascriptSerializer
mit dem zirkulären Referenzproblem hat.
Dies ist ein Beispiel, das die Bibliothek verwendet, um JSON aus einer Controller-Aktion auszugeben
%Vor%Wenn Sie diese Aktion ausführen, erhalten Sie die folgenden Ergebnisse
%Vor%JsonNetResult ist eine einfache benutzerdefinierte Wrapper-Klasse um die Funktionen der Json.NET-Bibliothek.
%Vor%Tags und Links asp.net-mvc asp.net-mvc-3 razor json