以下代码
var x = new JObject {
["property1"] = 'a',
["property2"] = "A",
["property3"] = -1,
["property4"] = 9.9,
};
当检查x时,它将返回以下值:
97, 一种, -1, 9.9
如何阻止JSON.Net将char
值转换为整数?
更新 我已经在调试器中检查了代码,并在LinqPad中运行了代码,然后转储了结果。
当我尝试编写代码以验证通过API进行的某些输入时出现了问题,我应该会成对或成对出现,但由于该API的帖子可能不在我的讨论范围内控制,我需要正确验证它。那是当我通过char
时发现行为异常的时候。
答案 0 :(得分:0)
看来,我正在尝试解决一个问题,除了在我自己的单元测试的上下文中,因为char
被序列化时,它已序列化为单个字符的字符串。
手动构建JObject
的行为使我看到的问题显而易见,这是因为,据我所知,JSON没有类型char
的概念,因此,至少在C#中,将char
分配给JObject
会使该值另存为其的int
表示形式。