Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/maven/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
.net 具有XML数据源和模式的类型化数据集_.net_Xml_Schema_Dataset - Fatal编程技术网

.net 具有XML数据源和模式的类型化数据集

.net 具有XML数据源和模式的类型化数据集,.net,xml,schema,dataset,.net,Xml,Schema,Dataset,我手工编写了一个XML模式文件(不使用VS中的数据集设计器)和一个包含要读入的结构化数据的相应XML文件 我运行xsd.exe程序生成一个类型化数据集类;总的来说,一开始它看起来不错(忽略它如何为公共类成员使用小写),但是当涉及到使用生成的类时,什么也没有发生: MyDataSet set = new MyDataSet(); set.ReadXml( "myData.xml" ); 此时,MyDataSet类的所有类型化表成员的.Count为0 令人窒息的是,我也无法让正常的数据集工作: D

我手工编写了一个XML模式文件(不使用VS中的数据集设计器)和一个包含要读入的结构化数据的相应XML文件

我运行xsd.exe程序生成一个
类型化数据集
类;总的来说,一开始它看起来不错(忽略它如何为公共类成员使用小写),但是当涉及到使用生成的类时,什么也没有发生:

MyDataSet set = new MyDataSet();
set.ReadXml( "myData.xml" );
此时,
MyDataSet
类的所有类型化表成员的
.Count
为0

令人窒息的是,我也无法让正常的
数据集
工作:

DataSet set = new DataSet();
set.ReadXmlSchema("mySchema.xsd");
set.ReadXml( "myData.xml");
set.Tables.Count
返回7,这是正确的,但是表都是空的

我错过了什么明显的东西吗

更新:

完全不执行任何操作后
set.Tables[“extra”].Rows.Count返回正确的行数;但当我使用类型化数据集时,它不起作用,尽管其他一切都是一样的:

DataSet ds = new DataSet();
ds.ReadXml( packageExamplePath );

System.Console.WriteLine( ds.Tables["extra"].Rows.Count );

Package st = new Package();
st.ReadXml( packageExamplePath );

System.Console.WriteLine( st.Tables["extra"].Rows.Count );
…将其打印到控制台:

十九,

0


问题:xsd.exe中的代码是否正确生成?例如,您能否在代码中使用生成的DS,创建数据行,将它们添加到数据表中,等等

如果是这样,请尝试手动填充DS,保存xml,并与结构化xml数据文件进行比较,以确保其具有相同的结构