![](/img/trans.png)
[英]Type 'System.String' is not supported for deserialization of an array
[英]Getting error Type 'System.String' is not supported for deserialization of an array
我在使用JavascriptDeserializer反序列化c#中的JSON对象的嵌套数组时遇到问题
这是我的代码
using (Stream s = request.GetResponse().GetResponseStream())
{
using (StreamReader sr = new StreamReader(s))
{
string jsondata = sr.ReadToEnd();
var workout = ser.Deserialize<clServiceOutput1>(jsondata);
}
}
这是我的Jsondata
{"Data":"50951","FileData":[37,80,68,70,45,49,46,51,13,37,226,227,207,211,13,10],"MailItem":null,"Status":"Success","TurnAroundTime":null}
这是我的课
public class clServiceOutput1
{
public string Data { get; set; }
public string FileData { get; set; }
public string MailItem { get; set; }
public string Status { get; set; }
public string TurnAroundTime { get; set; }
}
FileData
是json
字符串中数字值的集合。
"FileData":[37,80,68,70,45,49,46,51,13,37,226,227,207,211,13,10]
你需要
List<int> FileData //or int[]
附带说明,请使用http://json2csharp.com/复制json并获取C#模板类。 将JSON粘贴到上述站点中会导致:
public class RootObject
{
public string Data { get; set; }
public List<int> FileData { get; set; }
public object MailItem { get; set; }
public string Status { get; set; }
public object TurnAroundTime { get; set; }
}
基于@xanatos的评论
用该字段的名称,它似乎是文件的二进制“流”,而不是必须扩展的内容。 因此,
byte[]
也可能是您字段的类型
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.