Ich habe eine Sammlung von Cards
in meiner EmployeeMasterA
Klasse, ich bin mir nicht sicher, was ist die richtige Methode zum Anhängen der Auflistung in FormData
Objekt. Was ich will, so etwas wie dieses:Anfügen einer Auflistung in JQuery FormData-Objekt
var data = new FormData();
data.append('Cards[0].CardId', 1);
data.append('Cards[0].CardTitle', "Credit");
data.append('Cards[1].CardId', 2);
data.append('Cards[1].CardTitle', "Debit");
und dies ist mein Ajax-Anforderung:
$.ajax({
url: '/EmployeeMasterA/Create',
data: data,
type: 'POST',
contentType: false,
processData : false,
success: function (result) {
if (result.Success == "1") {
}
}
});
und meine controller
:
[HttpPost]
public ActionResult Create(EmployeeMasterA employeeMasterA)
{
//get data and perform logics
}
EmployeeMasterA
Klasse:
public class EmployeeMasterA
{
public string EmployeeCode { get; set; }
public virtual ICollection<Cards> Cards { get; set; }
}
EmployeeMasterA
enthält Sammlung von Karten, hier ist die Cards
Klasse:
public class Cards
{
public int CardId { get; set; }
public string CardTitle { get; set; }
}
Wie kann ich die Sammlung von Cards
im FormData
Objekt anhängen? Damit bindet es sich korrekt an die Klasse.
aktualisieren
Wenn ich einen Blick in den Debug-Modus nehmen, die Cards
Sammlung ist null
, warum?
Der Code, den Sie funktioniert perfekt und 'Cards' enthält 2 Elemente gezeigt haben, die richtig bestückt sind. Wenn es nicht für Sie arbeitet, ist es entweder nicht der Code, den Sie verwenden, oder Sie haben einige relevanten Code weggelassen. –
@StephenMuecke, Du hast Recht, ich habe einen sehr dummen Fehler gemacht, 'FormData' wurde reinitialisiert, deshalb bekam ich' null', vielen Dank für deine Zeit :) –