json.net,JsonReaderException:解析值后遇到意外字符

时间:2014-04-08 12:09:50

标签: c# .net json json.net

我正在尝试使用JSON反序列化array Newtonsoft JSON。但是,使用从服务器收到的string,我收到以下错误:

Newtonsoft JSON, JsonReaderException: After parsing a value an unexpected character was encountered

如果我在反序列化中对string进行硬编码,它的工作正常。

这是原始JSON。从服务器接收的内容与打印到控制台时的硬编码字符串相同。

{"id":15,"username":"patrick"}

反序列化代码

JsonConvert.DeserializeObject<User>(jsonstring);

我怀疑它与编码有关。

我做错了什么?


按要求提供用户类

using UnityEngine;
using System.Collections;
using Newtonsoft.Json;
[JsonObject(MemberSerialization.OptOut)]
public class User{


        [JsonProperty]
        private int id;
        [JsonProperty]
        private string username;

        public User (int setId, string setName){
                id = setId;
                username = setName;
        }


        public string GetUsername(){
                return username;
        }

}

1 个答案:

答案 0 :(得分:2)

那么,你试图反序列化的字符串是什么?我使用了以下代码并没有遇到任何问题:

public static void Main()
{
      const string jsonString = "{ \"id\":15, \"username\":\"patrick\" }";
      User u = JsonConvert.DeserializeObject<User>(jsonString);
}