将模型传递给控制器

时间:2015-02-25 08:32:15

标签: c# jquery json asp.net-mvc asp.net-mvc-4

以下是我的相关守则。我在Controller Action中将所有值都设为null。

如何将模型传递给控制器​​?

var Settings = [];
Settings.push({
    Server: Server,
    Name: Name,
    Email: Email                    
});

Settings = JSON.stringify({ 'Settings ': Settings });

jq.ajax({
    contentType: 'application/json; charset=utf-8',
    dataType: 'json',
    type: 'POST',
    url: '/Site/insertSettings',
    data: Settings ,
    success: function () {
        ....
    }
});

控制器

[HttpPost]
public JsonResult insertSettings(Settings model)
{
    ....
}

1 个答案:

答案 0 :(得分:0)

我相信你还需要指定控制器所期望的正确参数名称。

请尝试将其更改为:

var settings = {Server:Server, Name:Name,Email:Email};
var jsonDataToSend = JSON.stringify({ 'model': settings });

其中包含模型参数:

{"model":{"Server":"Server","Name":"Name","Email":"Email"}}

然后:

data: jsonDataToSend,