2010-03-26 108 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