我C#
类具有以下结构如何序列化使用JSONCONVERT这是由类本身的实例,在C#中初始化类的静态变量
public class Example
{
public static Example Instance1 = new Example (0, "A");
public static Example Instance2 = new Example (1, "B");
protected Example(int value, string name)
{
this.value = value;
this.name = name;
}
private int value;
private string name;
}
现在我试图序列Example.Instance1
如下
var serializedVariable = JsonConvert.SerializeObject(Example.Instance1);
var OriginalVariable = JsonConvert.DeserializeObject<Example>(serializedVariable);
但它引发了一个异常,它没有为JSON指定构造函数,但在反序列化版本中值和名称都会丢失。
现在我增加了一个用于构造称为[JsonConstructor]
参数。它确实反序列化,但名称和值在反序列化的类中丢失。
能否请你帮我,如何序列化这样的类实例?
在另一方面,是什么让从创建初始化对象的一个无限循环的例子吗? –
价值观没有序列化的原因是因为他们不是***公共财产***,为什么你要隐藏它们?只要将它们暴露为公共财产,你就会很好。你也可以在私有成员上使用'JsonPropertyAttribute'来允许序列化。 –
尝试在不调用静态成员的情况下创建该类的实例,您将无法做到这一点。如果你不能,那么解串器无法做到这一点。 – CodingYoshi