我有以下从第三方库获得的动态对象:
IOrderStore os = ss.GetService<IOrderStore>();
IOrderInfo search = os.Orders.Where(t => t.Number == "test").FirstOrDefault();
IOrder orderFound = os.OpenOrder(search, true);
dynamic order = (dynamic)orderFound;
dynamic requirements = order.Title.Commitments[0].Requirements;
我需要将其解析为 JSON 字符串。
我尝试了这个(使用 JSON.net):
string jsonString = JsonConvert.SerializeObject(requirements);
return jsonString;
但我得到了一个看似损坏的 JSON 字符串,如下所示:
[{"$id":"1"},{"$id":"2"},{"$id":"3"},{"$id":"4"},{"$id" :"5"},{"$id":"6"},{"$id":"7"},{"$id":"8"},{"$id":"9"}, {"$id":"10"},{"$id":"11"},{"$id":"12"},{"$id":"13"},{"$id": "14"},{"$id":"15"}]
该对象包含多个属性,而不仅仅是“id”。
有什么建议吗?
你有没有尝试过使用var
代替dynamic
?
// Use "var" in the declaration below.
var requirements = order.Title.Commitments[0].Requirements;
string jsonString = JsonConvert.SerializeObject(requirements);
当你只想反序列化时requirements
如果不对其进行任何其他操作,则无需使用它dynamic
ally.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)