c#忽略空属性

c#忽略空属性,c#,json,class,properties,C#,Json,Class,Properties,我正在使用Framewrok4.5编写一个C#WebAPI应用程序 该方法检索这样定义的类 公共类BGBAResultadoOperacion { 公共字符串Codigo{get;set;} 公共字符串Severidad{get;set;} [DataMember(Name=“description”,EmitDefaultValue=false)] 公共字符串描述符{get;set;} }使用Newtonsoft.Json进行序列化时,请使用NullValueHandling选项 : “我不

我正在使用Framewrok4.5编写一个C#
WebAPI应用程序

该方法检索这样定义的

公共类BGBAResultadoOperacion
{
公共字符串Codigo{get;set;}
公共字符串Severidad{get;set;}
[DataMember(Name=“description”,EmitDefaultValue=false)]
公共字符串描述符{get;set;}

}
使用Newtonsoft.Json进行序列化时,请使用NullValueHandling选项

:


“我不能使用Json.Net,因为我使用的是Framework.4.5。”-Json.Net下到了.Net Framework 2.0;是什么让你认为你不能使用它?另外:
DataContractJsonSerializer
在这里工作吗?那可能行吗?(虽然它是Json.NET的一个可怜的表亲)我尝试通过Nuget添加Json.NET,并说它不能添加,因为我使用的是Framework4.5,我没有使用DataContractJsonSerializer,我必须检查一下。感谢“成功地将'Newtonsoft.Json 12.0.1'安装到ConsoleApp35”-在这里工作正常;您使用的是旧的IDE/工具吗?好的,我已经安装了Newtonsoft.Json 12.0.1,我已经尝试安装Json.Net,这就是错误。。。在我安装了它之后,您能告诉我如何遵循以避免空属性吗?谢谢
public class Person
{
    public string Name { get; set; }
    public int Age { get; set; }
    public Person Partner { get; set; }
    public decimal? Salary { get; set; }
}

Person person = new Person
{
    Name = "Nigal Newborn",
    Age = 1
};

string jsonIncludeNullValues = JsonConvert.SerializeObject(person, Formatting.Indented);

Console.WriteLine(jsonIncludeNullValues);
// {
//   "Name": "Nigal Newborn",
//   "Age": 1,
//   "Partner": null,
//   "Salary": null
// }

string jsonIgnoreNullValues = JsonConvert.SerializeObject(person, Formatting.Indented, new JsonSerializerSettings
{
    NullValueHandling = NullValueHandling.Ignore
});

Console.WriteLine(jsonIgnoreNullValues);
// {
//   "Name": "Nigal Newborn",
//   "Age": 1
// }