我试图通过Json文件递归运行并检索名为“fileName”的属性,然后将该属性的值添加到ListView中。然而,问题在于,正如标题所述,同一模式中有两个相同属性的实例,这是我认为会导致错误的原因。在同一模式下具有相同名称的两个属性。尝试检索属性值时出错
我想忽略包含“spigot.jar”的“fileName”属性,并且只检索包含“spigot-1.7.10-R0.1-SNAPSHOT.jar”的属性。
样品JSON的我试图解析(或使用http://ci.md-5.net/job/Spigot/api/json?depth=1为参考)的:
"artifacts" : [
{
"displayPath" : "spigot-1.7.10-R0.1-SNAPSHOT.jar",
"fileName" : "spigot-1.7.10-R0.1-SNAPSHOT.jar",
"relativePath" : "Spigot-Server/target/spigot-1.7.10-R0.1-SNAPSHOT.jar"
},
{
"displayPath" : "spigot.jar",
"fileName" : "spigot.jar",
"relativePath" : "Spigot-Server/target/spigot.jar"
}
]
如何我试图解析,并把它添加到ListView在C#:
var url = "http://ci.md-5.net/job/Spigot/api/json?depth=1";
var content = (new WebClient()).DownloadString(url);
dynamic json = JsonConvert.DeserializeObject(content);
foreach (var builds in json.builds)
{
string fileName = builds.artifacts.fileName;
lvServers.Items.Add(fileName);
}
我该如何去成功检索“fileName”属性?
你的代码工作真棒,但我们为什么需要使用动态字? – MonsterMMORPG 2014-08-28 00:29:03