我有一个包含多个 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/