Hi
I have an issue while convert data table into XML
Error: Cannot serialize the DataTable. DataTable name is not set.
What I have tried :
Public Function ConvertDatatableToXML(ByVal dt As DataTable) As String
Dim str As MemoryStream = New MemoryStream()
dt.WriteXml(str, True)
str.Seek(0, SeekOrigin.Begin)
Dim sr As StreamReader = New StreamReader(str)
Dim xmlstr As String
xmlstr = sr.ReadToEnd()
Return (xmlstr)
End Function
Private Sub btnSave_Click(sender As Object, e As EventArgs) Handles btnSave.Click
Dim dt As DataTable = New DataTable()
dt = GetData()
Dim XMLstring As String = clsAPI.ConvertDatatableToXML(dt)
Me.txtComments.Text = XMLstring
End Sub
Public Function GetData() As DataTable
Dim dt As New DataTable
Dim adp As New SqlDataAdapter("usp_TR_Data", conn)
adp.SelectCommand.CommandType = CommandType.StoredProcedure
adp.SelectCommand.CommandTimeout = 150
With adp.SelectCommand.Parameters
.Clear()
.Add("@Action", SqlDbType.NVarChar).Value = "CONVERT-XML"
.Add("@SONo", SqlDbType.NVarChar).Value = Me.txtSONo.Text
End With
adp.Fill(dt)
Return dt
End Function
SQL Query
Select
[sname],[saddress1],[saddress2],[scity],[spostcode],[sstate],
[dairport],[scountry], [detailOfContent],[weight],[productPackages],
[dimensionX],[dimensionY],[dimensionZ],[chargeableRate],[rname],[rphone],
[raddress1],[raddress2],[rpostcode],[rcity],[rstate],[rairport],[rcountry],
[rremark],[rvia],[serviceModeId],[agentId],[trackingno]
From TR_Data
where SONo=@sono
pls advice me
Thank you
Maideen
Aravind GovindarajPosted Dec 22, 2022, 10:16 AM
pls refer to this link, maybe helps you
https://www.c-sharpcorner.com/UploadFile/deepak.sharma00/how-to-write-data-of-an-sql-server-table-to-an-xml-file-usin/
Sam HobbsPosted Dec 22, 2022, 10:07 AM
It will help people help you if you specify what line of code is causing that error.
What you can do is to look at the documentation of the method being called in that line and see how the DataTable name is set.