0

我有一张这样的桌子

ID Reid 用户 ID 过滤器 23 1 0 [{'Vehicle':'5010','Users':'2279'}]

我正在 json 中检索过滤器列,它看起来像这样 "Filter": "[{'Vehicle':'5010','Users':'2279'}]"

我正在检索这个 {[Filter, [{'Vehicle':'5010','Users':'2279'}]]}
我想要反序列化,以便我只能获得 Vehicle 表示 5010 和 Users 表示 2279。

我怎样才能在c#中得到这个

4

1 回答 1

0

你的 JSON 是什么样子的?

{"Filter": "[{'Vehicle':'5010','Users':'2279'}]"}

或者

[{'Vehicle':'5010','Users':'2279'}]

或者

 {[Filter, [{'Vehicle':'5010','Users':'2279'}]]}

???

例如,您可以尝试这样的事情:

//JSON looks like this {"Filter": "[{'Vehicle':'5010','Users':'2279'}]"}
var json = "{\"Filter\": \"[{'Vehicle':'5010','Users':'2279'}]\"}";
dynamic myObject = Newtonsoft.Json.JsonConvert.DeserializeObject(json);
dynamic myFilterObject = Newtonsoft.Json.JsonConvert.DeserializeObject(myObject.Filter.ToString());
int Vehicle = myFilterObject[0].Vehicle;

如果你反序列化你的 json,你首先会得到一个对象(myObject),它有一个属性“Filter”和一个包含另一个 json 的字符串类型的值。因此,只需再次反序列化该 json。然后您将获得另一个带有对象数组的对象(myFilterObject)。在示例中,我选择该数组的第一个对象([0]),然后获取“Vehicle”的值。

于 2013-10-31T09:17:17.177 回答