zoukankan      html  css  js  c++  java
  • 调用newtonsoft.json反序列出错

    调用newtonsoft.json反序列出错:

    Newtonsoft.Json.JsonSerializationException: Cannot deserialize the current JSON object (e.g. {"name":"value"}) into type 'System.Collections.Generic.List`1[WebService.Yeesky.JsonString]' because the type requires a JSON array (e.g. [1,2,3]) to deserialize correctly.
    To fix this error either change the JSON to a JSON array (e.g. [1,2,3]) or change the deserialized type so that it is a normal .NET type (e.g. not a primitive type like integer, not a collection type like an array or List<T>) that can be deserialized from a JSON object. JsonObjectAttribute can also be added to the type to force it to deserialize from a JSON object.
    Path 'S', line 1, position 5.
    
    

     贴一片E文solution:

     JsonConvert.DeserializeObject - Cannot deserialize the current JSON object (e.g. {"name":"value"}) into type 'System.Collections.Generic.List`1[System.String]'
    
    Run into this issue while consuming a 3rd party JSON API using JSON.NET.
    
    Complete exception message:
    
    Cannot deserialize the current JSON object (e.g. {"name":"value"}) into type 'System.Collections.Generic.List`1[System.String]' because the type requires a JSON array (e.g. [1,2,3]) to deserialize correctly.
    
    The json string I was trying to deserialize had a field looking like this:
    
    "extras": {},
    
    In my C# class that field was declared as a List<string>. 
    By declaring the field as an IDictionary<string, string> instead the problem was solved. 
    
    Lesson learned:
    
        If the json value is '[]' => declare the field as List<type>
        If the json value is '{}' => declare the field IDictionary<type, type>
    
  • 相关阅读:
    自己搭建二维码接口
    HTML CSS SPRITE 工具
    Codeforces Round #636 (Div. 3) 题解
    Codeforces Round #612 (Div. 1+Div. 2)
    计树问题小结 version 2.0
    Educational Codeforces Round 85 (Rated for Div. 2) 题解
    luogu6078 [CEOI2004]糖果
    luogu [JSOI2012]分零食
    多项式全家桶
    生成函数小结
  • 原文地址:https://www.cnblogs.com/Raywang80s/p/3200482.html
Copyright © 2011-2022 走看看