У меня три проблемы с некоторыми данными, которые я сериализирую.
Во-первых, он выдает <<code>?xml version="1.0" encoding="utf-8"?>, но программа, в которую я загружаю его, хочет только <<code>?xml version="1.0"?>
Во-вторых, всякий раз, когда данные пусты, они будут использовать сокращение для закрытия тега (<z303-profile />
), но программа, в которую я загружаю их, не примет это и требует <z303-profile></z303-profile>
Наконец, у меня есть некоторые данные, которые я не могу гарантировать, как долго это будет, поэтому я храню их в списке. Мне нужно, чтобы у каждого элемента был свой заголовок z305, но он выводит имя списка, в котором они находятся в первую очередь, что все портит. Отображается следующим образом
<z305List>
<z305>
....
</z305>
<z305>
....
</z305>
</z305List>
со списком, хранящимся как
[XmlArrayItem("z305")]
public List<LocalPatronInfo> z305List = new List<LocalPatronInfo>();
Код, который я использую для сериализации, выглядит следующим образом
XmlSerializerNamespaces ns = new XmlSerializerNamespaces();
ns.Add("", "");
XmlSerializer xmls = new XmlSerializer(typeof(AllRecords));
TextWriter tw = new StreamWriter(richTextBoxWorkingDir.Text + "\\" + filename);
xmls.Serialize(tw, allRecords, ns);
tw.Close();