我跟随json来自服务器
{
"contactList":[{
"contactName":"Jhon",
"address":null,
"phone":null,
"contactId":99932
}]
}
现在,当我使用JsonConvert.DeserializeObject<Response>(content)
进行反序列化时,我想要跟随输出
{
"contactList":[{
"contactName":"Jhon",
"contactId":99932
}]
}
我尝试了以下代码,但它无效
JsonSerializerSettings jsonSettings = new JsonSerializerSettings
{
NullValueHandling = NullValueHandling.Ignore,
MissingMemberHandling = MissingMemberHandling.Ignore
};
这是我的联系模式
public class Contact
{
[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
public String address { set; get; }
[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
public String phone { set; get; }
[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
public String name { set; get; }
[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
public String id { set; get; }
}
响应模型
[JsonObject(MemberSerialization = MemberSerialization.OptIn)]
public class Response
{
[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
public IList<SignodeMSA.Model.Master.Contact> contactsList { get; }
}
我从服务器获取后反序列化
Response responseData = await Task.Run(() => JsonConvert.DeserializeObject<Response>(content, jsonSettings));
答案 0 :(得分:0)
我认为您需要从json string手动删除该属性。
也许是这样的:How do I remove all null and empty string values from a json object?