json - 将 json 对象发布到 MVC3 Controller , bool 值始终为 false

标签 json asp.net-mvc-3 jquery

我有一个包含多个 bool 值的对象。但我未能将其发布到 mvc3 Controller ,其他值已被服务器成功接收。

$.ajax({
     url: url,
     type: 'POST',
     data: JSON.stringify(g),
     datatype: 'json',
     contentType: 'application/json;charset=utf-8',
     success: function (data) {
      }
});

调用 JSON.stringify(g) 将返回以下字符串 ( *partial )

"Entry":["true","false"],"Exit":"false","Speeding":["true","false"],"SpeedLimit":"110","EES_Monday":["true","false"],"EES_Tuesday":["true","false"],"EES_Wednesday":["true","false"],"EES_Thursday":["true","false"],"EES_Friday":["true","false"],"EES_Saturday":"false","EES_Sunday":"false"

但是,我的服务器 Controller 无法接收 bool 值

[HttpPost]
public String Edit(EditModel g){ }

所有 bool 值均为 false。但会收到其他值。

潜在原因是什么?

我已经被困在这里一下午了。请指导我。

最佳答案

看起来,您的 bool 值以字符串的形式出现。也许您的 JSON 反序列化器不会将 "true" 转换为 true

在静态类型语言中(包括 C#)

true != "true"

关于json - 将 json 对象发布到 MVC3 Controller , bool 值始终为 false,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13047760/

相关文章:

asp.net - 通过javascript从代码后面访问变量

c# - JavaScript : how do I prevent a user from selecting anything in a select option list without using disable/pointer-events?

JQuery - 使彩色条展开以显示事件链接/悬停动画

javascript - 下拉列表第一个元素样式

javascript - 汉堡下拉菜单打不开

c++ - 将 json-Container 复制分配给 vector

wordpress - 以 JSON 格式从 Woocommerce 导出订单

Java:从文件读取JSON,转换为ORC并写入文件

asp.net-mvc-3 - HttpContext.Current 与 ActionExecutingContext

c# - jQuery AJAX 的 ASP.Net MVC 路由问题