我无法填写输入的数据集
Using reader as New StringReader(My.Resources.sampledata)
typedDataset.ReadXML(reader)
'typedDataset.WriteXML("c:\data.xml")
End Using
以上不起作用。如果我启用注释行将结果写入文件,我将获得带有
的1K文件<?xml version="1.0" standalone="yes"?>
<testSchema xmlns="http://tempuri.org/TestSchema.xsd" />
如果我创建一个空白数据集,请使用
Dim data as New DataSet
Using reader as New StringReader(My.Resources.sampledata)
data.ReadXML(reader)
'data.WriteXML("c:\data.xml")
End Using
它将数据写入文件。这意味着数据集是从XML加载的。 XML是从有效数据集
创建的Dim ds as DataSet = Service.GetData(params)
ds.WriteXML(C:\sampledata.xml")
然后存储在Resources文件中。
我也尝试了选项
1. Auto
2. ReadSchema
3. IgnoreSchema
4. InferSchema
使用“InferSchema”,我能够添加XML,但它创建了第二个表。
我想要做的就是从XML文档中加载我的Typed Dataset,这是从dataset.WriteXML()创建的
由于
答案 0 :(得分:3)
解决方案
Dim ds As New DataSet Using reader As New System.IO.StringReader(My.Resources.sampledata) ds.ReadXml(reader) typedDS.Load(ds.Tables(0).CreateDataReader(), LoadOption.OverwriteChanges, typedDS.MyTable) End Using
答案 1 :(得分:0)
您必须使用包含的架构进行编写。
ds.WriteXml("TEST.xml", XmlWriteMode.WriteSchema);
编辑:
或
ds.Tables[0].WriteXml("TEST.xml", XmlWriteMode.WriteSchema);
ds.Tables[0].ReadXml("TEST.xml");
或强类型数据表读/写
typedDataset.tableName.WriteXml("TEST.xml", XmlWriteMode.WriteSchema);
typedDataset.tableName.ReadXml("TEST.xml");