我得到下面的JSON对象作为响应:
{
status: false,employee: {
firstName: "Test",lastName: "Test_Last"
}
}
由于上述字符串是API响应,因此“ Employee”是动态属性。可以是用户或公司等。
因此,要在C#中反序列化上述对象,我创建了一个类似以下的类结构:
public class Response<T> {
[JsonProperty(PropertyName = "status")]
public bool Status {get;set;}
public T Item {get;set;}
}
[JsonObject(Title = "employee")]
public class Employee {
[JsonProperty(PropertyName = "firstName")]
public string FirstName {get; set;}
[JsonProperty(PropertyName = "lastName")]
public string LastName {get; set;}
}
但是当我尝试反序列化JSON字符串时,Employee类不会反序列化,而employee对象的值始终保持为null。
这是我反序列化JSON字符串的方式:
Newtonsoft.Json.JsonConvert.DeserializeObject<Response<Employee>>(jsonString);
我相信我对Employee类的JsonObject属性做错了。但是我不确定。