繁体   English   中英

Json.NET问题

[英]Json.NET issues

我正在尝试在C#中序列化一个简单的对象,发送它,然后在另一端反序列化它。 前两个部分似乎工作正常,但当我尝试做:

ReturnItem jsonval = JsonConvert.DeserializeObject<ReturnItem>(result);

我明白了:

07-08 11:41:15.519 I / MonoDroid(2856):Newtonsoft.Json.JsonSerializationException:转换值“{”Val1“时出错: - 1.0,”Val2“: - 1.0,”Val3“: - 1.0,”Val4“ :-1.0}“键入'AndroidDemo.ReturnItem'。 路径'',第1行,位置104. ---> System.ArgumentException:无法从System.String转换或转换为AndroidDemo.ReturnItem。

作为参考,ReturnItem看起来像:

public class ReturnItem
{
    public double Val1{ get; set; }
    public double Val2{ get; set; }
    public double Val3{ get; set; }
    public double Val4{ get; set; }
}

结果是一个看起来像这样的字符串:

“{\\” VAL1 \\ “: - 1.0,\\” VAL2 \\ “: - 1.0,\\” VAL3 \\ “: - 1.0,\\” VAL4 \\ “: - 1.0}”

编辑:这是我最初序列化ReturnItem的方式。

ReturnItem value = new ReturnItem();
value.Val1= -1;
value.Val2= -1;
value.Val3= -1;
value.Val4= -1;
return JsonConvert.SerializeObject(value);

在您尝试反序列化的字符串中是否存在JSON对象周围的双引号?

如果是这样,那么它会认为整个事物是字符串的JSON表示,而不是'ReturnItem'。

确保AndroidDemo.ReturnItem类与上例中的ReturnItem类相同。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM