• 调用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>
    
  • 相关阅读:
    广义表的创建和遍历
    dev c++ Boost库的安装
    NAT模式
    vmware桥接模式
    smb与samba
    利用Linux的Samba服务模拟NT域
    使用samba进行共享文件操作步骤
    安装chrome
    使用虚拟机上网第二步
    TCP协议三次握手过程分析
  • 原文地址:https://www.cnblogs.com/Raywang80s/p/3200482.html
Copyright © 2020-2023  润新知