JsonConvert.DeserializeObject解析错误

在用JsonConvert.DeserializeObject进行反序列化之后进行强制转换会出现错误,Var可以很好的避免这个问题。
如果你是序列化private属性的字段也会出现错误。

try
            {
                int count = socket.Receive(readBuff);
                string str = System.Text.Encoding.UTF8.GetString(readBuff, 0, count);
                foreach (string s in str.Split('&'))
                {

                    if (s.Length > 0)
                    {
                        Debug.Log(s);
                        //用 Message m =(Message) JsonConvert.DeserializeObject(s) ; //进行强转会解析错误
                        var m = JsonConvert.DeserializeObject<Message>(s) ;
                        var viedio = JsonConvert.DeserializeObject<ViedioProgressMessage>(m.info) ;
                        Debug.Log(viedio.vProgress);
                    }
                }
            }
            catch (SocketException)
            {
                break;
            }
            catch (System.Exception e)
            {
                Debug.Log(e.Message);
            }

你可能感兴趣的:(Unity,unity)