Ich versuche immer noch zu verstehen, wie eine Liste von JSON-Objekten an einen Controller gesendet werden muss, um die Daten in einer SQL-Server-Datenbanktabelle "Eingeladene" zu speichern.Liste der JSON-Objekte zum Controller
Ein Beispiel wäre sehr nützlich.
JSON:
[{Email :"[email protected]",Presence :"nodig"},{Email :"[email protected]",Presence :"gewenst"}]
Modell:
public class Invitee
{
public int Id { get; set; }
public int AppId { get; set; }
public string Email { get; set; }
public string Presence { get; set; }
};
Controller: (Modell gibt einen Null exeption, Model = true)
[HttpPost]
public JsonResult InviteeSave(List<Invitee> model)
{
if (ModelState.IsValid)
{
using (var db = new MainDbContext())
{
var dbInv = db.Invitees.Create();
foreach (var inv in model)
{
dbInv.AppId = 35;
dbInv.Email = inv.Email;
dbInv.Presence = inv.Presence;
db.Invitees.Add(dbInv);
}
db.SaveChanges();
}
}
else
{
ModelState.AddModelError("", "Something went wrong");
}
return Json(model);
}
jQuery Ajax:
$.ajax({
url: '@Url.Action("InviteeSave", "App")',
dataType: "json",
type: "POST",
accept: 'appication/json; charset=utf-8',
cache: false,
data: JSON.stringify(jsonData),
success: function (data) {
if (data.success) {
alert("Met succes !");
}
},
error: function (xhr) {
alert('error');
}
});
Es ist nichts falsch mit Ihrer AJAX-Request; Das Problem ist in C#. Was genau ist "Null"? Platzieren Sie einen Haltepunkt in der Aktion und durchlaufen Sie ihn bei Bedarf. –
Rechtschreibfehler in 'appication' (fehlendes' l') –
Entschuldigung dafür. In der Steuerung 'Modell' gibt eine Null Ausnahme – wintee