【发布时间】:2019-10-14 11:01:06
【问题描述】:
我在使用 Newton.Json 序列化对象时遇到问题,当我使用断点进行调试时,我发现我的序列化对象是空的,而提供给序列化程序的对象是完整的。
编辑: 这是我要序列化其列表的类。
class ArgumentGroup
{
String argumentGroupName = "";
String argumentDescription = "";
int argumentCount = 0;
List<Argument> argumentList = new List<Argument>();
public ArgumentGroup(string argumentGroupName, string argumentDescription, int argumentCount, List<Argument> argumentList)
{
this.argumentGroupName = argumentGroupName;
this.argumentDescription = argumentDescription;
this.argumentCount = argumentCount;
this.argumentList = argumentList;
}
}
【问题讨论】:
-
你能告诉我们你正在序列化的类吗?
-
@EylM 我已经用代码 sn-p 更新了。
-
添加这个:
var obj = new ExampleClass(); var jsons = JsonConvert.SerializeObject(obj, new JsonSerializerSettings() { NullValueHandling = NullValueHandling.Ignore }); -
此对象中没有要序列化的公共属性
-
使用公共属性,而不是字段。字段是实现细节,只有 properties 是类接口的一部分。序列化程序(全部)使用属性。它们也可以配置为使用字段,甚至是私有字段,但它们不应该除非有非常重要的原因
标签: c# serialization json.net