我在Windows Phone应用程序中使用Apache Cordova,我需要在JSON对象中获取字符串值。
我怎样才能获得json键“版本”?
我尝试这样做但没有结果..
public void dispatcherEvent(string result)
{
System.Diagnostics.Debug.WriteLine("EVENT received = " +result);
try
{
string optVal = JsonHelper.Deserialize<string[]>(result)[0];
}
catch (Exception)
{
// simply catch the exception, we will handle null values and exceptions together
}
}
实际上,输出控制台是:
EVENT received = ["{\"id\":2,\"name\":\"onConnectResult\",\"data\":\"[{\\\"version\\\":\\\"2.0.000.000\\\"}]\"}","ap246039464"]
答案 0 :(得分:1)
看看Newtonsoft's JSON library。有了它,你可以做类似的事情:
string json = @"{
'Name': 'Bad Boys',
'ReleaseDate': '1995-4-7T00:00:00',
'Genres': [
'Action',
'Comedy'
]
}";
Movie m = JsonConvert.DeserializeObject<Movie>(json);
string name = m.Name;
// Bad Boys
它也可以在Nuget
中找到答案 1 :(得分:0)
您可以尝试使用JsonModel。我在像我这样的项目中使用它:
public class JsonModel
{
[JsonProperty("version")]
public string Version { get; set; }
}
现在,您可以使用JsonConvert.DeserializeObject<T>()
来获取模型的强类型实例。
JsonModel model = JsonConvert.DeserializeObject<JsonModel>(result);
string version = model.Version;