【发布时间】:2013-12-21 15:42:56
【问题描述】:
我绝对不是 JSON 专家。所以,这就是问题所在。我有一个接受 JSON 字符串的 Web 服务方法,我需要将其转换为 .NET 对象。我正在使用 JSON.NET (Newtonsoft.Json)。我很确定我的 JSON 字符串格式不正确 - 我很确定我在某处遗漏了一些括号 - 这是我需要转换为单个 .NET 对象的 JSON:
{'Safety Data': {
{
'unsafe': 'YES',
'Category Name': 'Body Mechanics',
'Category Data': 'Grip / Force',
'Safe': 'NO'
},
{
'unsafe': 'YES',
'Category Name': 'Position of People',
'Category Data': 'Falling',
'Safe': 'NO'
},
{
'unsafe': 'YES',
'Category Name': 'Position of People',
'Category Data': 'Other',
'Safe': 'YES'
},
'Safe Acts Observed': 'APPLE',
'Unsafe Acts Observed': 'OK',
'Date': '11 / 11 / 1988',
'Observer Name': 'Bob',
'Observer Group': 'TEST',
'Location / Area / Region': 'Nowhere',
'Email': 'abc@abc.com'
}
这是我的 C# 代码:
我尝试过以各种不同的方式更改我的 JSON,但最终我得到了几个不同的错误。对于初学者,我需要知道的是,上面的 JSON 格式是否正确(或不正确),其次,鉴于我上面的 JSON 结构,是否可以将其反序列化为单个 .NET 对象。
【问题讨论】:
-
不,您的 json 不正确(除了无效字符“和”)。试试this site
-
您的 json 数据中真的有智能引号吗? ——这是绝对不行的。看来您的代码并非基于您的代码 sn-p。
-
@GaryWalker LOL 不,看看我的代码示例,我用单引号替换了它们。我修改了代码块。
-
-1 停止猜测 - 这是为了您的利益。见jsonlint.com 和json.org
标签: c# asp.net json serialization json.net