【发布时间】:2017-10-19 07:02:26
【问题描述】:
我有 3 节课,如下所示。
[Serializable]
public class Classa {
public list<Object> list {get; set;}
}
[Serializable]
public class Classb {
public string name {get; set;}
public string nickname {get; set;}
}
[Serializable]
public class Classc {
public string type {get; set;}
public string price {get; set;}
}
在我的程序中,当我传递与Classb 或Classc 匹配的JSON 结构时,我想将List<Object> 转换为List<Classb> 或List<Classc>...有没有办法转换它?
[HttpPost]
[ActionName("Import")]
[EnableCors(origins: "*", headers: "*", methods: "*")]
public Object Import([FromBody]Classa ImportData)
{
List<Classb> blist = a.list.Cast<Classb>().toList();
}
它抛出:
无法将“Newtonsoft.Json.Linq.JObject”类型的对象转换为类型 'Classb'
我试过了:
List<Classb> blist = aOfType<Classb>().ToList();
成功但没有价值..
【问题讨论】:
-
哦..我自己修复它...只需先转换为 Jarray 即可修复它