C# creating XML output file without <?xml version="1.0" encoding="utf-8"?>
c#, output, xml
Solution
XmlWriterSettings settings = new XmlWriterSettings();
settings.OmitXmlDeclaration = true;
Problem
I'm new to C# development so maybe a very simple question here. I'm trying to get an output which starts as this: ``` <ns0:NamespaceEnvelope xmlns:ns0="http://url.to.NamespaceEnvelope/v1.0"> ``` But am getting this: ``` <?xml version="1.0" encoding="utf-8"?> <ns0> ``` This is my source: ``` XmlWriterSettings settings = new XmlWriterSettings(); settings.Indent = true; settings.IndentChars = " "; settings.NewLineChars = "\r\n"; settings.NewLineHandling = NewLineHandling.Replace; using (XmlWriter writer = XmlWriter.Create("employees.xml", settings)) { writer.WriteStartDocument(); writer.WriteStartElement("ns0"); writer.WriteStartElement("Firstsection"); ``` How can I get rid of: ``` <?xml version="1.0" encoding="utf-8"?> ``` And how can I change: ``` writer.WriteStartElement("ns0"); ``` To be able to output it as: ``` <ns0:NamespaceEnvelope xmlns:ns0="http://url.to.NamespaceEnvelope/v1.0"> ``` As this: ``` writer.WriteStartElement("ns0:NamespaceEnvelope xmlns:ns0="http://url.to.NamespaceEnvelope/v1.0""); ``` Is asking for an ")" probably because of the "surrounding the http part. Any help is highly appreciated.