MVC 3 AJAX Post, Liste mit Objekten gefüllt, aber Objekteigenschaften sind leer
Ich habe folgendes Problem:
Bei einem Knopfdruck POSTE ICH einige Daten an den Server. Meine Controller-Aktion sieht folgendermaßen aus:
<code>public ActionResult Accept(List<MyViewModel> entries) { //here entries HAS 2 MyViewModel-Instances in it. //The entries are not null, but the values of the instances are! //entries[0].ParamA is null } </code>
Wo das MyViewModel so aussieht:
<code>public class MyViewModel { public string ParamA { get; set; } public string ParamB { get; set; } } </code>
Und der AJAX-Call ist der folgende:
<code>var myEntries = { entries: [{ ParamA: "A", ParamB: "B" }, { ParamA: "C", ParamB: "D" }] }; $.ajax({ type: 'POST', url: url, cache: false, data: myEntries, dataType: 'text' }); </code>
Was ich schon versucht habe:
DataType wurde in 'json' geändertgebraucht: traditionell: wahrversucht var myEntries = JSON.stringify (...);versucht var myEntries = {entries: [JSON.stringify ({...}), JSON.stringify ({...})]};wie oben, jedoch mit jQuery.param (..., true);Verwendung von IEnumerable oder MyViewModel [] anstelle von list.JEDE Kombination der oben genanntenWas mache ich hier falsch?
Vielen Dank im Voraus für Ihre Hilfe!
BEARBEITEN
Meine (Rasiermesser-) Ansicht ist derzeit nicht interessant, da sie mit nichts zu tun hat. Ich verwende KEINE der HTML.TextBoxFor (oder ähnlichen) Methoden, um die myEntries-Variable zu füllen. Es wird tatsächlich dynamisch gefüllt (weil es viele, viele Bedingungen gibt). Aus Gründen der Frage (und meiner eigenen Prüfung) habe ich die Variable hartcodiert. :)