C#中的JSON字符串解析问题

时间:2016-02-16 09:00:52

标签: c# json javascriptserializer

我收到的JSON字符串不一致。有时,JSON中的某些数据元素返回“List”类型,其他时候返回“字典”类型。目前使用JavaScriptSerializer来反序列化JSON字符串,但它在例如

的情况下给了我一个例外

例如 - 我有一个数据字段“jpjhseq”我已经声明为字典,但有时JSON字符串将其作为字符串返回,我得到一个异常。其他字段也会出现此问题。

JavaScriptSerializer serializer = new JavaScriptSerializer();

Foo foo = serializer.Deserialize<Foo>(jsonString);

我多次遵循json字符串

{"element1":{"0":"0","1":"S","2":"S","3":"J","4":"Q","5":"X","6":"M"},"element2":{"1":"one" ,"2":"two","4":"four","5":"five","6":"six","7":"seven","8":"eight"}}

我得到的其他数据跟随json字符串

{"element1":["0","S","S","J","Q","X","M"],"element2":["one" ,"two","four","five","six","seven","eight"]}

如何为这种不一致的json字符串编写通用的json解析器? 键名将是标准名称,但其值的数据类型可能会有所不同。

可以采取哪些措施来解决此问题?

0 个答案:

没有答案