1

I am trying to use xmlwriter to customize my xml file. I have tried using a class to serialize to xml but it does not seem to work. My goal is to have multiple namespace definitions within the "AddO" element, with each element under the messages having a prefix.

Click event:

    XmlWriterSettings objSetting = new XmlWriterSettings();
            objSetting.Indent = true;
            objSetting.NewLineOnAttributes = true;

            System.Text.StringBuilder sb = new System.Text.StringBuilder();


            using (XmlWriter objWriter = XmlWriter.Create(sb, objSetting))
            {
                //Request
                objWriter.WriteStartDocument();
                objWriter.WriteStartElement("Request");
                objWriter.WriteStartElement("SName");
                objWriter.WriteValue("AocD");
                objWriter.WriteEndElement();
                objWriter.WriteStartElement("Message");
                //objWriter.WriteStartElement("pd", "AddO", "www.google.com");
                objWriter.WriteStartElement("pd", "AddO", "www.google.com");
                objWriter.WriteStartElement("aoc","CaseD");
                objWriter.WriteStartElement("CaseA");
                objWriter.WriteStartElement("DocE");
                objWriter.WriteEndElement();
                objWriter.WriteEndElement();
                 objWriter.WriteEndElement();
                objWriter.WriteEndElement();//CaseD End
                objWriter.WriteEndElement();//Message End
                objWriter.WriteEndElement();//Request End
                objWriter.WriteEndDocument();
 File.WriteAllText(Server.MapPath("~/images/test.xml"), sb.ToString());

I get this XML Result:

 <?xml version="1.0" encoding="utf-16"?>
<Request>
  <SName>AocD</SName>
  <Message>
    <iepd:AddO xmlns:iepd="www.google.com">
      <aoc xmlns="CaseD">
        <CaseA>
          <DocE>

          </DocE>
        </CaseA>
      </aoc>
    </iepd:AddO>
  </Message>
</Request>

Trying to get:

  <?xml version="1.0" encoding="utf-16"?>
<Request>
  <SName>AocD</SName>
  <Message>
    <iepd:AddO xmlns:iepd="www.google.com" xmlns:a="www.goo.com" xmlns:b="www.gle.com" xmlns:d="www.le.com">
      <a:CaseD">
        <b:CaseA>
          <d:DocE>

          </d:DocE>
        </b:CaseA>
      </a:CaseD>
    </iepd:AddO>
  </Message>
</Request>
Cœur
  • 37,241
  • 25
  • 195
  • 267
Jerry Trac
  • 357
  • 4
  • 17

0 Answers0