public static void ProcessLines(List<string> allLines, out pfm pfm)
{
...
pfm = newPfm;
pfm forseril = new pfm("");
XmlSerializer mySerializer = new XmlSerializer(typeof(pfm));
StreamWriter myWriter = new StreamWriter("myFileName.xml");
mySerializer.Serialize(myWriter, forseril);
myWriter.Close();
}
以下是我认为应该是默认构造函数的东西:
[Serializable]
[XmlRoot(ElementName = "Pfm", Namespace = null)]
public class pfm
{
public pfm(string data)
{
this.data = data;
}
public string data;
public Ctl ctl
{
get;
set;
}
[XmlAttribute(AttributeName = "Name")]
public string Name
{
get;
set;
}
}
我使用了Microsoft网站上的一个istruction:instruction
答案 0 :(得分:0)
XmlSerializer
需要的是无参数构造函数 - 没有参数的constructor。因此,您的pfm
需要一个构造函数,如下所示:
public class pfm
{
pfm() : this("") { }
public pfm(string data)
{
this.data = data;
}
}
不需要公开。样本fiddle。