Wie gehen JSON-Objekt die controller-Methode in ASP.NET MVC 4
Ich habe eine HTML-Tabelle und möchten, übergeben Sie den Inhalt der Tabelle in einer controller-Methode. Ich benutze JQuery um ein array erstellen, dann verwandeln Sie diese in ein JSON-Objekt.
var array_MACAddress = [];
var $MacAddress = $(".macaddress");
for (var i = 0, len = $MacAddress.length; i < len; i++) {
var $MAC = $($MacAddress[i]);
console.log($MAC.text()); ////for testing only!!!
array_MACAddress.push({
key: $MAC.data("key"),
value: $MAC.text()
});
};
(der code oben ist es, erstellen Sie ein array mit einer Spalte namens "MACAddress
"), dann kann ich folgenden code verwenden, um Sie in das JSON-Objekt
var json_MACAddress = json.stringify(array_MACAddress);
Wie gebe ich das JSON-Objekt in der controller-Methode?
public ActionResult ActivationManagement(String jsonData)
ist es möglich, übergeben Sie das json-Objekt als Hauptteil einer post-Anfrage?
Ich bin nicht allzu sicher, dass
hoffen Sie auf mithilfe von ajax übergeben Sie die Daten zurück an den controller?
Ja. das ist, was ich im Sinn hatte
Ich würde vorschlagen, was neil vorgeschlagen. Erstellen Sie ein Typ ähnlich wie bei Ihnen die übergabe von view und controller und alles sollte funktionieren wie erwartet.
Ich bin nicht allzu sicher, dass
hoffen Sie auf mithilfe von ajax übergeben Sie die Daten zurück an den controller?
Ja. das ist, was ich im Sinn hatte
Ich würde vorschlagen, was neil vorgeschlagen. Erstellen Sie ein Typ ähnlich wie bei Ihnen die übergabe von view und controller und alles sollte funktionieren wie erwartet.
InformationsquelleAutor user2701646 | 2013-08-20
Du musst angemeldet sein, um einen Kommentar abzugeben.
Um die AJAX-Anfrage, die Sie dies tun können:
Müssen Sie zum angeben einer view-Modell zu entsprechen, wird Ihre ajax-Modell ist, enthält Ihre mac-Adressen:
Da Sie effektiv haben eine Liste von diesen Objekten müssen Sie das definieren der controller-Aktion wie folgt:
- und MVC-Modell von binder wird automatisch eine Karte aus dem Modell, da in contentType in Sie AJAX-Aufruf, die Sie angegeben, dass die Daten, die Sie senden ist von JSON geben.
Mein Rat an Sie ist insta-Fiddler ( http://fiddler2.com/ ), die wird Ihnen helfen, analysieren jede Anfrage gemacht, so dass Sie deutlich sehen, wenn es ein problem gibt und wie es zu lösen.
InformationsquelleAutor Marko
so können Sie entweder einen webapi, oder, wenn ich mich richtig erinnere, können Sie einfach hinzufügen [HttpPost], um die Zeile über Ihre controller-Methode:
nun den Körper Ihrer ajax-request wird muss ein string sein, und Sie müssen, konvertieren Sie die Zeichenfolge in ein Objekt, das Sie manipulieren können, auf der server-Seite, so dass, wenn Sie wissen, was zu erwarten, aus der JSON-Objekt, sollten Sie überlegen, definieren Sie Ihre eigenen benutzerdefinierten Objekt und dann lassen MVC analysieren den Körper, um Ihre eigene Objekt.
z.B.
Sorry, ich bin ein wenig eingerostet auf MVC, aber ich denke, das ist die Allgemeine Idee.
InformationsquelleAutor Neil S