我使用WebRequest将JSON对象发送到休息服务器。 ContentType设置为application / json
原始类被序列化为JSON字符串,而不是转换为字节的字符串(使用BlockCopy而不是使其成为unicode)并通过HTTP发送。
在服务器端,我修改了一个JContainer对象而不是字符串(可能是内容类型的b / c)
如何使用JSON.NET直接反序列化此对象?
我能够把它变成一个字符串,然后反序列化它,但是由于字符串不可读而导致一些错误我无法跟踪(来自unicode转换的大量\ 0)。 p>
我的问题是 - 我可以反序列化原始的JSON对象吗? 有没有办法将此对象转换为常规ASCII字符串?
public void Put(MyClass cls)
{
}
// I get nothing
public void Put(JContainer cls)
{
string myjson = cls.ToString()
** Update: This string is the original JSON but in UNICODE.
** this text doesn't deserialized to the original class.
}
答案 0 :(得分:0)
问题在于编码。 使用ASCII编码而不是Unicode解决了所有反序列化问题。 只需执行JContainer.ToString()并将其发送到Deserialize函数。