C# 解析json响应为空
我在解析json时遇到问题 json数据如下所示: 我使用创建了一些类,但搜索为空:C# 解析json响应为空,c#,json,parsing,C#,Json,Parsing,我在解析json时遇到问题 json数据如下所示: 我使用创建了一些类,但搜索为空: var url = "http://beta.fmeserver.com/fmerest/engines/.json?token=0ccfa0400b2d760fa3519baf18a557edb118356e"; WebClient client = new WebClient(); var json = client.DownloadString(url); var search = JsonConver
var url = "http://beta.fmeserver.com/fmerest/engines/.json?token=0ccfa0400b2d760fa3519baf18a557edb118356e";
WebClient client = new WebClient();
var json = client.DownloadString(url);
var search = JsonConvert.DeserializeObject<ServiceResponse>(json);
public class Engine
{
public int FMEBuildNumber { get; set; }
public string FMEHostName { get; set; }
public string FMEInstanceName { get; set; }
public int currentJobID { get; set; }
public int maxTransactionResultFailure { get; set; }
public int maxTransactionResultSuccess { get; set; }
public int resultFailureCount { get; set; }
public int resultSuccessCount { get; set; }
public int transactionPort { get; set; }
}
public class Engines
{
public List<Engine> engine { get; set; }
}
public class ServiceResponse
{
public string requestURI { get; set; }
public string token { get; set; }
public Engines engines { get; set; }
}
[JsonObject(MemberSerialization.OptIn)]
public class RootObject
{
[JsonProperty("serviceResponse")]
public ServiceResponse ServiceResponse { get; set; }
}
var url=”http://beta.fmeserver.com/fmerest/engines/.json?token=0ccfa0400b2d760fa3519baf18a557edb118356e";
WebClient客户端=新的WebClient();
var json=client.DownloadString(url);
var search=JsonConvert.DeserializeObject(json);
公共级引擎
{
public int FMEBuildNumber{get;set;}
公共字符串FMEHostName{get;set;}
公共字符串FMEInstanceName{get;set;}
public int currentJobID{get;set;}
public int maxTransactionResultFailure{get;set;}
public int MaxTransactionResultAccess{get;set;}
public int resultFailureCount{get;set;}
public int resultSuccessCount{get;set;}
公共int事务端口{get;set;}
}
公共级发动机
{
公共列表引擎{get;set;}
}
公共类服务响应
{
公共字符串requestURI{get;set;}
公共字符串标记{get;set;}
公共引擎{get;set;}
}
[JsonObject(MemberSerialization.OptIn)]
公共类根对象
{
[JsonProperty(“serviceResponse”)]
公共服务响应服务响应{get;set;}
}
使用动态方式如何?(不使用由生成的任何类)
var url = "http://beta.fmeserver.com/fmerest/engines/.json?token=0ccfa0400b2d760fa3519baf18a557edb118356e";
using (WebClient wc = new WebClient())
{
string json = wc.DownloadString(url);
dynamic dynobj = JsonConvert.DeserializeObject(json);
foreach (var engine in dynobj.serviceResponse.engines.engine)
{
Console.WriteLine("{0} {1}", engine.FMEInstanceName, engine.transactionPort);
}
}