我已经看到了这个几个线程,我尝试了所有的答案( ASP.NET MVC JsonResult回报500 )
我的Ajax请求重新转动500内部错误。 如果我调试我从来没有让我的行动。
这里是我的Ajax调用:
$.ajax({
url: '@Url.Action("UpdateSortOrder", "FormItems")',
data: { itemToUpdateId: item.attr("id"), newParentItemId: parentItemId, newPreviousItemId: previousItemId },
type: 'POST',
success: function (data) {
console.log(data);
},
error: function (xhr, status, exception) {
console.log("Error: " + exception + ", Status: " + status);
}
});
而我的行动:
[HttpPost]
public ActionResult UpdateSortOrder(Guid itemToUpdateId, Guid newParentItemId, Guid newPreviousItemId)
{
FormItem updatedItem = _formItemService.GetOne(x => x.Id == itemToUpdateId);
return Json(updatedItem, JsonRequestBehavior.DenyGet);
}
使用Chrome的控制台,这些都是从回复的响应头:
HTTP / 1.1 500内部服务器错误的Cache-Control:私人的Content-Type:text / html的; 字符集= UTF-8服务器:Microsoft-IIS / 7.5 X-AspNetMvc-版本:3.0 X-ASPNET-版本:4.0.30319 X供电,通过:ASP.NET日期:星期二,2012年12月18日21时53分41秒GMT内容长度:17041
服务器日志显示没有子状态代码。 任何想法,我做错了什么? 我更喜欢使用,而不是GET POST。
表格数据被示出为:
itemToUpdateId:18ac5399-342e-4a39-9da1-3281a89501df
newParentItemId:空
newPreviousItemId:空
哪个是对的。
我已经尝试设置的contentType为application / JSON和喜欢在这个问题上的传统=真: 发送Ajax后与MVC的“应用/ JSON的;字符集= UTF-8”从VS web开发服务器返回错误500
同样的错误。