Я работаю над классом C #, я хочу сериализовать, все идет хорошо, за исключением того, что я схожу с ума, получая пространства имен моего корневого элемента следующим образом:
<m:DE815 xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:m="http://das.dogane.finanze.it" xmlns="http://das.dogane.finanze.it" versione="1.0">
Мне нужно написать внутри корневого элемента обаxmlns = "http://das.dogane.finanze.it" и xmlns: m =" http://das.dogane.finanze.it" но я получаю вот что:
<m:DE815 xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:m="http://das.dogane.finanze.it" versione="1.0">
Вот код, который я использую для сериализации моего класса:
stream = new MemoryStream(); // read xml in memory
XmlWriter xmlWriter = XmlWriter.Create(stream);
XmlSerializer serializer = new XmlSerializer(typeof(DE815), "http://das.dogane.finanze.it");
List<XmlQualifiedName> names = new List<XmlQualifiedName>();
var xmlns = new XmlSerializerNamespaces(names.ToArray());
xmlns.Add("m", "http://das.dogane.finanze.it");
xmlns.Add("xs", "http://www.w3.org/2001/XMLSchema");
xmlns.Add("", "http://das.dogane.finanze.it");
serializer.Serialize(xmlWriter, de815, xmlns); // read object
int count = (int)stream.Length; // saves object in memory stream
byte[] arr = new byte[count];
stream.Seek(0, SeekOrigin.Begin);
stream.Read(arr, 0, count);
UTF8Encoding utf = new UTF8Encoding(); // convert byte array to string
String xmlAsString = utf.GetString(arr).Trim();
File.WriteAllText("d:\\prova_DE815.xml", xmlAsString, Encoding.UTF8);
Вот объявление класса, который я хочу сериализовать:
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "2.0.50727.3038")
System.SerializableAttribute()
System.Diagnostics.DebuggerStepThroughAttribute()
System.ComponentModel.DesignerCategoryAttribute("code")
System.Xml.Serialization.XmlTypeAttribute(Namespace="http://das.dogane.finanze.it", AnonymousType=true)
System.Xml.Serialization.XmlRootAttribute(Namespace="http://das.dogane.finanze.it", IsNullable=false)
public partial class DE815 {
Что мне не хватает в коде?
Заранее спасибо за вашу помощь, не стесняйтесь задавать больше вопросов, если я пропустиллюбая информация.