Imports System.Xml Imports System.Xml.Serialization Imports System.IO Imports System.Text Namespace Common Public NotInheritable Class XmlHelper Private Sub New() End Sub Public Shared Function SerializeToString(ByVal obj As Object) As String Dim sb As New StringBuilder Dim settings As New XmlWriterSettings settings.OmitXmlDeclaration = True settings.Indent = True settings.NewLineHandling = NewLineHandling.Entitize Using writer As XmlWriter = XmlTextWriter.Create(sb, settings) Serialize(writer, obj) Return sb.ToString() End Using End Function Public Shared Sub Serialize(ByVal writer As XmlWriter, ByVal obj As Object) Dim serializer As New XmlSerializer(obj.GetType()) serializer.Serialize(writer, obj) End Sub Public Shared Function DeSerialize(Of T)(ByVal xmlString As String) As T Using reader As New StringReader(xmlString) Dim serializer As New XmlSerializer(GetType(T)) Return DirectCast(serializer.Deserialize(reader), T) End Using End Function End Class End Namespace