MVC5 控制器未收到 JSON 对象

萨米尔·布洛斯

我有一个控制器,方法如下:

public JsonResult Save(List<BlogInfo> list)
{
    return Json(new { Data = "" }, JsonRequestBehavior.AllowGet);
}

我有来自客户的 ajax 帖子如下:

$.ajax({
    url: "Home/Save",
    type: "post",
    contentType: "application/json",
    data: ko.mapping.toJSON(ViewModel),
    success: function (response) {
        alert(response.Status);
    }
});

我的问题是控制器的列表参数始终为空。我尝试将其更改为字符串而不是列表,但这也是空的。

使用 Fiddler,我可以看到 JSON 正在按如下方式传递:

{"Data":[{"Id":1,"Title":"Sudoku Solver","Description":"Programmed Sudoku Solver","Tags":["programming","sudoku"]},{"Id":2,"Title":"Picnic","Description":"Went to millpoint","Tags":["picnic"]},{"Id":0,"Title":"Title","Description":"Description","Tags":[]}]}
达林·季米特洛夫

您显示的 JSON 不代表数组,因此您不可能期望将其绑定到服务器上的列表。要实现这一点,请确保您从客户端发送一组对象:

data: ko.mapping.toJSON(ViewModel.Data);

这里我们采用ViewModel.Data表示数组属性,以便我们只发送所需的 JSON:

[{"Id":1,"Title":"Sudoku Solver","Description":"Programmed Sudoku Solver","Tags":["programming","sudoku"]},{"Id":2,"Title":"Picnic","Description":‌​"Went to millpoint","Tags":["picnic"]},{"Id":0,"Title":"Title","Description":"Description‌​","Tags":[]}]

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

春天开机自动JSON对象以在控制器

将JSON对象传递给MVC控制器时,string.empty转换为null

从MVC控制器获取JSON对象

MVC5帐户控制器null参考异常

在MVC中创建JSON对象并从控制器返回

MVC5控制器参数中的口音

在角度控制器MVC Web应用程序中将Json字符串转换为对象列表

如何从C#MVC5控制器中不包含headerID的Razor页面使用JSon对象

如何从MVC控制器返回JSON对象并查看TGT

MVC:从视图中的控制器检索传递的Json对象时,JavaScript错误

如何使用json.stringify将对象列表从视图传递到MVC控制器

发送对象的JSON列表到Spring MVC控制器

如何通过从angularJS控制器到MVC5控制器的Ajax调用获取JSON

未从JSON AJAX发布中调用MVC5控制器操作

MsTests MVC5控制器未触发OnAuthorization

动态JSON对象未传递到MVC控制器

MVC5 JSON解析

使用Spring MVC将JSON对象从javascript函数传递到Java控制器类

使用jQuery将JSON对象发送到MVC 6 WebApi控制器

MVC5用ajax检索数据,返回json对象而不是view

根据返回的json对象mvc5在视图中动态创建html元素

Spring MVC控制器方法能否返回类似JSON对象(包含验证错误列表)的内容而不是视图?

当我不知道JSON对象名称时,如何在MVC控制器中获取JSON数据?

MVC5的“通用”包装器-控制器?

将对象从视图传递到控制器 MVC 5

Spring MVC,将json对象传递给控制器并返回设置了模型属性的视图

MVC5 控制器未收到 ajax 发布的 html 内容

试图在 MVC 控制器中调用 json ID,但我收到此错误“对象引用未设置为对象的实例”

在 ASP.Net Core 5 MVC 控制器中,当传递包含小数的 JSON 对象 FromBody 时,模型始终为空