我想更新我的用户信息,但出现错误
500状态码响应
当我更新数据时。
这是我的代码:
上下文类:
公共无效更新(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>
这是我得到的错误:
谢谢您的回答!非常感谢
答案 0 :(得分:1)
500状态表示PostEdit()操作中存在异常。请检查您的模型userInformation传递给方法_ui_context.Update(userInformation);
您可以更改
if (!ModelState.IsValid)
{
return new JsonResult("Model is invalid");
}