' Convert a DataSet into an Xml ' This functions make it so the schema is included ' expO1 DataSet Public Function DataSetToXml(ByVal toDataSet As DataSet) As String Dim lcXml As String = "" Dim loMemorySteam As New MemoryStream() ' Adjust the dataset to avoid null values toDataSet = AdjustDataSetToAvoidNullValue(toDataSet) toDataSet.WriteXml(loMemorySteam, XmlWriteMode.WriteSchema) loMemorySteam.Seek(0, SeekOrigin.Begin) Dim lcStreamReader As New StreamReader(loMemorySteam) lcXml = lcStreamReader.ReadToEnd() Return lcXml End Function ' Adjust a dataset to avoid null values ' expO1 Dataset Public Function AdjustDataSetToAvoidNullValue(ByVal toDataSet As DataSet) As DataSet Dim loColumn As DataColumn Dim loRow As DataRow Dim loTable As DataTable For Each loTable In toDataSet.Tables For Each loRow In loTable.Rows For Each loColumn In loTable.Columns If IsDBNull(loRow.Item(loColumn.ColumnName)) Then Select Case loColumn.DataType.ToString Case "System.DateTime" ' Get the proper definition as per the current scope If oProcess Is Nothing Then loRow.Item(loColumn.ColumnName) = oProcess.oApp.GetEmptyDate() Else loRow.Item(loColumn.ColumnName) = oApp.GetEmptyDate() End If Case "System.Integer" loRow.Item(loColumn.ColumnName) = 0 Case Else loRow.Item(loColumn.ColumnName) = "" End Select End If Next Next Next Return toDataSet End Function