发送带有模型内部错误的Ajax

Send Ajax with an model internal error

本文关键字:错误 Ajax 内部 模型      更新时间:2023-09-26

我有一个mvc3项目。

我试图从我的JS代码发送一个ajax post请求,问题是我得到一个内部错误,当我调试它的方法甚至没有调用。

这是我的Js代码:
ajaxCallTest: function (url, dataObj) {
    $.ajax({
        url: url,
        type: "POST",
        data: dataObj,
        success: function (result) {
        }
        ,
        error: function (result) {
        }
    });
}
这是我的c#代码:
[HttpPost]
public string Transaction(PaymentModel model) 
{
...
}

现在当我尝试:

ajaxCallTest('..url/Transaction', ''); <- enters 'Transaction' with null values...

但是当我这样做的时候:

ajaxCallTest('..url/Transaction', model); <--- the model is in type of PaymentModel 

第二个代码没有进入'Transaction'方法,instead I get 500 - internal error

为什么?

编辑:

var dataObj = { Id: 11, Description: "hh" };
$.ajax({
        url: url,
        type: "POST",
        data: JSON.stringify(dataObj),
        success: function (result) {
            //window.location.replace(result);
            var form = $(result);
            $(form).submit();
        }
        ,
        error: function (result) {
            console.log('Error ' + result);
            //cardStrip.fail();
        }
    });

您的dataObj模型需要匹配您的PaymentModel例如:

如果PaymentModel看起来像这样:

public class PaymentModel
{
    var int Id{get; set;}
    var string Description{get; set;}
}

那么你的javascript应该看起来像这样:

// create an object that represents PaymentModel
var dataObj = {Id: $('myId').val(), Description: $('#MyDescription').val()};
$.ajax({
    url: url,
    type: "POST",
    data:  JSON.stringify(dataObj)