2008-10-07 14 views
7

Mam następujące metody serializacji:serializacji XML, nr Whitespace

Private Function SerializeData(ByVal data As cData) As String 
     If data IsNot Nothing Then 
      Dim xml_stream As New MemoryStream() 
      Dim sr As StreamReader 
      Dim xs As New XmlSerializer(GetType(cData)) 
      xml_stream = New MemoryStream() 

      Try 
       xs.Serialize(xml_stream, data) 
       xml_stream.Position = 0 

       sr = New StreamReader(xml_stream) 
       Return sr.ReadToEnd() 
      Finally 
       If sr IsNot Nothing Then sr.Close() 
       xml_stream.Close() 
      End Try 

     Else 
      Return "No data" 
     End If 
    End Function 

jednak zwraca xml zagnieżdżone elementy wciśnięty. Czy istnieje sposób, aby wyłączyć to na serializatorze, czy muszę po prostu uruchomić procedurę zastępowania Znajdź, aby pozbyć się tego wszystkiego?

Zasadniczo, co chcę zobaczyć to:

<root><child1>data</child1><child2>data</child2></root> 

Odpowiedz

10

Użyj override serializacji, która akceptuje parametr XmlWriter. Utwórz XmlWriter za pomocą XmlWriter :: Create, przekazując obiekt XmlWriterSettings z właściwością Wcięcie ustawioną na wartość false.

Powiązane problemy