下面一个是我的json对象
{
"LNK" : "862",
"MUK" : "861",
"query" : "java"
}
我想捕获 LNK 和相应的句柄。我试过了:
var result = Deserializejson<Dictionary<string,Search>>(jsonresponse);
var searchhandles = new List<Search>(result.Count);
创建一个模型类以映射到您的 Json 结构或使用动态
:EDIT: 抱歉语法错误,这里有一个完整的例子
var seri = JsonSerializer.CreateDefault();
dynamic dynamicObject = new
{
LNK = "862",
MUK = "861",
query = "java"
};
using (var textWriter = new StringWriter())
{
var writer = new JsonTextWriter(textWriter);
seri.Serialize(writer, dynamicObject);
var result = textWriter.ToString();
}
也有效:
dynamic dynamicObject = new
{
LNK = "862",
MUK = "861",
query = "java"
};
var result = JsonConvert.SerializeObject(dynamicObject);
对于序列化/反序列化,有不同的库。除了 .Net 标准,我强烈推荐通过 Nuget 获得的 Json.Net 库。
如果使用JSON.Net 并将 JSON 反序列化为对象
dynamic obj= JsonConvert.DeserializeObject<dynamic>(content);
这只是您可以尝试的另一种选择。JSONObject
如果您手头的 JSON 不是预定义的结构,您可以使用它。
http://msdn.microsoft.com/en-us/library/system.json.jsonobject(v=vs.95).aspx