JavaScriptSerializer 向 属性 添加问号
JavaScriptSerializer Adding a Question Mark to a Property
我 运行 遇到了一个奇怪的问题,环顾四周,我似乎找不到对正在发生的事情的任何解释。
我正尝试在 C# 中将一些数据序列化为 JSON,如下所示:
var transactionJson = new JavaScriptSerializer().Serialize(remoteData);
大多数情况下这是可行的,但偶尔会在生成的 JSON.
中插入一个问号字符
这里是生成的相应 JSON(注意前导“?”添加到 ProvinceCode 值中):
"Addresses": [{
"City": "Edmonton",
"Confidential": null,
"Country": null,
"CountryCode": "CA",
"Line1": "123 Test Dr.",
"Line2": null,
"Line3": null,
"Line4": null,
"PostalCode": "T5K1P4",
"Province": null,
"ProvinceCode": "?ALBERTA",
"Type": null,
"TypeCode": "H"
}],
有谁知道为什么要将这个额外的字符注入到值中?查看原始数据,我没有在该字段中看到任何特殊字符,如果我在调试模式下手动重新输入值,一切正常。
我查看了 char 数组,该字符串中似乎有一个 Byte Order Mark 字符。
该字符被序列化为“?”。
感谢@poke 提供的故障排除建议。
我 运行 遇到了一个奇怪的问题,环顾四周,我似乎找不到对正在发生的事情的任何解释。
我正尝试在 C# 中将一些数据序列化为 JSON,如下所示:
var transactionJson = new JavaScriptSerializer().Serialize(remoteData);
大多数情况下这是可行的,但偶尔会在生成的 JSON.
中插入一个问号字符这里是生成的相应 JSON(注意前导“?”添加到 ProvinceCode 值中):
"Addresses": [{
"City": "Edmonton",
"Confidential": null,
"Country": null,
"CountryCode": "CA",
"Line1": "123 Test Dr.",
"Line2": null,
"Line3": null,
"Line4": null,
"PostalCode": "T5K1P4",
"Province": null,
"ProvinceCode": "?ALBERTA",
"Type": null,
"TypeCode": "H"
}],
有谁知道为什么要将这个额外的字符注入到值中?查看原始数据,我没有在该字段中看到任何特殊字符,如果我在调试模式下手动重新输入值,一切正常。
我查看了 char 数组,该字符串中似乎有一个 Byte Order Mark 字符。
该字符被序列化为“?”。
感谢@poke 提供的故障排除建议。