Я пытаюсь сохранить данные, используя сообщение ajax, но получаю сообщение об ошибке Post 400. Вот мой код JS
$(document).on('click', '.btn-Submit', function (e) {
var user = {};
user.FirstName = $('#FirstName').val();
user.LastName = $('#LastName').val();
user.Email = $('#Email').val();
user.MobileNumber = $('#MobileNumber').val();
user.LoginName = $('#LoginName').val();
user.PassWord = $('#PassWord').val();
$.ajax({
url: '/Users/Create',
type: 'POST',
data: { user: user },
contentType: "application/json; charset=utf-8", // this
dataType: 'json',
success: function (resp) {
console.log(resp)
},
error: function () { }
}); // ajax asynchronus request
});
Вот мой контроллер
[HttpPost]
[ValidateAntiForgeryToken]
public async Task<JsonResult> Create(User user)
{
try
{
if (ModelState.IsValid)
{
user.CreatedDate = DateTime.Now;
user.CreatedBy = 1;
user.UpdatedBy = 1;
user.UpdatedDate = DateTime.Now;
_context.Add(user);
await _context.SaveChangesAsync();
}
else
{
var error = ModelState.Values.SelectMany(x => x.Errors);
}
}
catch(Exception ex)
{
return Json(new { success = false, message = ex.Message });
}
return Json(new { success = true });
}
Я думал, что синтаксис для них обоих правильный, однако каждый раз, когда я выполняю вызов ajax, я получаю 400 ответ. Что я делаю не так?