При обновлении ajax ASP.NET MVC я получаю ответ с кодом состояния 500 - PullRequest
0 голосов
/ 08 марта 2019

Я хочу обновить информацию о пользователе, но я получаю сообщение об ошибке

500 ответ кода состояния

когда я обновляю свои данные.

Это мой код:

Класс контекста:

публичное обновление void (модель UserInformation) { var user = _db.UserInfo .FirstOrDefault (m_id => m_id.Id == model.Id);

   _db.Update(user);
   _db.SaveChanges();

}

Контроллер:

[HttpPost]
[ValidateAntiForgeryToken]
public async Task<IActionResult> PostEdit(UserInformation userInformation)
{
    if (!ModelState.IsValid)
    {
    }

    _ui_context.Update(userInformation);

    return new JsonResult("User Updated!");
}

Мой звонок AJAX:

if (action == "Update") {
    $.ajax({
                method: "POST",
                url: "/UserInformation/PostEdit",
                data: $('#form_data').serialize(),
                dataType: "JSON",
                success: function (data) {
                    alert(data);
                    clearFields();
                    $("#exampleModal").modal("hide");
                    loadUser();
                }
     });
}

Тогда вот мой взгляд на модал:

<form method="POST" id="form_data">
    <div asp-validation-summary="ModelOnly" class="text-danger"></div>
    <input type="hidden" asp-for="Id" />
    <input type="hidden" id="action_value" value="" />
    <div class="form-group">
        <label asp-for="FirstName" class="control-label"></label>
        <input asp-for="FirstName" class="form-control" id="txtFirst" />
        <span asp-validation-for="FirstName" class="text-danger"></span>
    </div>
    <div class="form-group">
        <label asp-for="LastName" class="control-label"></label>
        <input asp-for="LastName" class="form-control" id="txtLast" />
        <span asp-validation-for="LastName" class="text-danger"></span>
    </div>
    <div class="form-group">
        <label asp-for="Location" class="control-label"></label>
        <input asp-for="Location" class="form-control" id="txtLocation" />
        <span asp-validation-for="Location" class="text-danger"></span>
    </div>
</form>

Это ошибка, которую я получаю:

500 status code respone

Спасибо за ваш ответ! Цените это очень

1 Ответ

1 голос
/ 08 марта 2019

Состояние 500, означающее, что внутри действия PostEdit () есть исключение.Пожалуйста, проверьте вашу модель userInformation перейдите в метод _ui_context.Update(userInformation);

Вы можете изменить

    if (!ModelState.IsValid)
   {
return new JsonResult("Model is invalid");
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...