ASP.NET MVC-Controller-Aktionen, die JSON oder Teil-HTML zurückgeben
Ich versuche, Controller-Aktionen zu erstellen, die entweder JSON oder teilweise html je nach einem Parameter zurückgegeben werden. Was ist der beste Weg, um das Ergebnis asynchron an eine MVC-Seite zurückzugeben?
394
3
Geben Sie in Ihrer Aktionsmethode Json(object) zurück, um JSON an Ihre Seite zurückzugeben.
Rufen Sie dann einfach die Aktionsmethode mit Ajax auf. Sie können eine der Hilfsmethoden der ViewPage verwenden, wie z.B.
SomeMethod wäre eine Javascript-Methode, die dann das zurückgegebene Json-Objekt auswertet.
Wenn Sie eine einfache Zeichenkette zurückgeben möchten, können Sie einfach das ContentResult verwenden:
ContentResult gibt standardmäßig einen text/plain als ContentType zurück.
Dies ist überladbar, so dass Sie auch tun können:
Eine weitere gute Möglichkeit, mit JSON-Daten umzugehen, ist die Verwendung der JQuery-Funktion getJSON. Sie können die
Methode von der jquery getJSON-Methode aus aufrufen, indem Sie einfach...
Um die andere Hälfte der Frage zu beantworten, können Sie anrufen:
aufrufen, wenn Sie teilweise HTML zurückgeben wollen. Sie müssen nur einen Weg finden, um zu entscheiden, ob die Anfrage JSON oder HTML will, vielleicht basierend auf einem URL-Teil/Parameter.