Bu konuyla ilgili birkaç konu gördüm ve tüm bu yanıtları denedim (ASP.NET MVC JsonResult return 500)
ajax isteğim 500 Dahili Hatayı yeniden çeviriyor. Hata ayıksam, hiçbir zaman aksiyonuma bile girmem. İşte
benim ajax çağrısıdır:$.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);
}
});
Ve eylemi:
HTTP/1.1: Krom konsolunu kullanarak
[HttpPost] public ActionResult UpdateSortOrder(Guid itemToUpdateId, Guid newParentItemId, Guid newPreviousItemId) { FormItem updatedItem = _formItemService.GetOne(x => x.Id == itemToUpdateId); return Json(updatedItem, JsonRequestBehavior.DenyGet); }
, bu yanıttan yanıt başlıkları şunlardır 500 İç Sunucu Hatası Önbellek Denetimi: özel İçerik Türü: text/html; charset = utf-8 Sunucu: Microsoft-IIS/7.5 X-AspNetMvc-Version: 3.0 X-aspnet-Versiyon: 4.0.30319 X-Powered-By: ASP.NET Tarih: Sal, 18 Aralık 2012 21 : 53: 41 GMT Içerik Uzunluk: 17041
Sunucu günlükleri alt veri kodları göstermiyor. Burada yanlış yaptığım bir fikrin var mı? GET yerine POST kullanmayı tercih ediyorum.
Form Verilerini olarak gösteriliyor:
itemToUpdateId: 18ac5399-342e-4a39-9da1-3281a89501df
newParentItemId: boş
newPreviousItemId: boş
Hangi doğru. Bu soru gibi uygulama/json ve = geleneksel true contentType ayarlama denedim
aynı hata.
Telden geçenleri görmek için ham POST'u Fiddler kullanarak görüntülemeyi denediniz mi? –
Rotalarınızı nasıl ayarlayacağınızı paylaşabilirsiniz? – kabaros
Rota çalışıyor, şu anda sadece bir alan ekleyerek doldurulan varsayılan rota kuralını kullanıyor. Bir görünümü döndürüp URL'yi yazacak şekilde eylemi değiştirirsem çalışır, böylece yol doğru şekilde işlenir. – SventoryMang