XMLSerializer - 无参数构造
XMLSerializer - Parameter less Construction
我有以下 class:
[Serializable]
public class ClassOne : ClassTwo
{
private string _parameterOne;
private string _parameterTwo;
private string _parameterThree;
public Category (string parameterOne, string parameterTwo, string parameterThree)
{
_parameterOne = parameterOne;
_parameterTwo = parameterTwo;
_parameterThree = parameterThree;
}
}
然后我想使用 XMLSerializer:
private void Serialize()
{
XmlSerializer xmlSerializer = new xmlSerializer(typeof(ClassOne));
xmlSerializer.Serialize(stream, object);
}
但是,我无法序列化那个 class,因为它没有无参数构造...我该如何实际解决这种情况?
添加空构造函数。您应该为要序列化的字段使用 public 属性
[Serializable]
public class ClassOne : ClassTwo
{
private string _parameterOne;
private string _parameterTwo;
private string _parameterThree;
public Category() { }
public Category (string parameterOne, string parameterTwo, string parameterThree)
{
_parameterOne = parameterOne;
_parameterTwo = parameterTwo;
_parameterThree = parameterThree;
}
}
我有以下 class:
[Serializable]
public class ClassOne : ClassTwo
{
private string _parameterOne;
private string _parameterTwo;
private string _parameterThree;
public Category (string parameterOne, string parameterTwo, string parameterThree)
{
_parameterOne = parameterOne;
_parameterTwo = parameterTwo;
_parameterThree = parameterThree;
}
}
然后我想使用 XMLSerializer:
private void Serialize()
{
XmlSerializer xmlSerializer = new xmlSerializer(typeof(ClassOne));
xmlSerializer.Serialize(stream, object);
}
但是,我无法序列化那个 class,因为它没有无参数构造...我该如何实际解决这种情况?
添加空构造函数。您应该为要序列化的字段使用 public 属性
[Serializable]
public class ClassOne : ClassTwo
{
private string _parameterOne;
private string _parameterTwo;
private string _parameterThree;
public Category() { }
public Category (string parameterOne, string parameterTwo, string parameterThree)
{
_parameterOne = parameterOne;
_parameterTwo = parameterTwo;
_parameterThree = parameterThree;
}
}