[英]VB.Net write and read DataTable to/from XML-file
我正在嘗試將DataTable寫入XML文件,然后使用以下VB.Net代碼將數據從XML文件讀取到另一個DataTable,我收到錯誤消息:“ DataTable不支持來自Xml的架構推斷。 “:
dt1.WriteXml(fileName:=xf, writeHierarchy:=True)
Dim dt2 = New Data.DataTable(dt1.TableName)
dt2 = ds.Tables(0)
dt2.ReadXml(fileName:=xf)
我可以通過將文件讀入DataSet來解決我的問題,但是我想了解一下區別:
Dim ds = New Data.DataSet()
ds.ReadXml(fileName:=xf)
Dim dt2 = ds.Tables(0)
有人可以告訴我嗎?
我知道很久以前就問過這個問題,但是幾天前我也遇到了同樣的問題。
您必須在導出(寫xml
)之前為DataTable
設置TableName
。
范例:
dt1.TableName = "MyDataTable"
dt1.WriteXmlSchema(Application.StartupPath + "\test_sh.xml", True)
dt1.WriteXml(Application.StartupPath + "\test_dt.xml", True)
並且,為了讀取(從xml
導入)回到新的DataTable
:
dt2 = New DataTable
dt2.ReadXmlSchema(Application.StartupPath + "\test_sh.xml")
dt2.ReadXml(Application.StartupPath + "\test_dt.xml")
然后填充您的GridView
或您需要的其他內容。
dt2
TableName
將自動從架構文件( test_sh.xml
)中test_sh.xml
。 在這種情況下, MyDataTable
就像在dt1.TableName
中設置的dt1.TableName
。
保存schema
也很重要 ,否則您將無法在表中讀回xml
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.