2010-03-26 90 views
0

我使用数据集读取xml文件,如下所示: DataSet ds = new DataSet(); ds.ReadXml(“C:\ test.xml”);按数据集读取XML

的test.xml包含

<MasterEntities> 
    <FieldInfo> 
    <Name>OMID</Name> 
    <Mandatory>Yes</Mandatory> 
    <RangeName>AssumptOMID</RangeName> 
    <DataType>int</DataType> 
    <Length>10</Length> 
    </FieldInfo> 
    <FieldInfo> 
    <Name>ClientName</Name> 
    <Mandatory>Yes</Mandatory> 
    <RangeName>AssumptClient</RangeName> 
    <DataType>string</DataType> 
    <Length>50</Length> 
    </FieldInfo> 
    <FieldInfo> 
    <Name>OppName</Name> 
    <Mandatory>Yes</Mandatory> 
    <RangeName>AssumptProjectName</RangeName> 
    <DataType>string</DataType> 
    <Length>50</Length> 
    </FieldInfo> 

    <Settings> 
    <somesetting1></somesetting1> 
    <somesetting2></somesetting2> 
    </Settings> 
</MasterEntities> 

现在我想在其他数据集一个数据集/数据表和设置读取字段信息/数据表

请帮助我的代码

+0

的XML数据是,全面的标签丢失。把XML放在邮件的代码块中。 – Kangkan 2010-03-26 04:08:19

回答

0

使用的ReadXml到将您的文件加载到单个数据集中。显示的XML将读入2个表格:一个名为FieldInfo,另一个名为Settings。

string fileName = @"C:\Temp\sample.xml"; 
DataSet ds = new DataSet(); 
ds.ReadXml(fileName); 

移动第二表到一个新的数据集,你可以做这样的事情

DataSet ds2 = new DataSet(); 
ds2.Tables.Add(ds.Tables[1].Copy()); // copy to second dataset 
ds.Tables.RemoveAt(1); // remove the original table