我已經嘗試過使用流,ReadXml等在這裏的響應中列出的各種方法,我得到了相同的結果(沒有添加行)。我很確定這是我的DataTable結構中的錯誤。XML到DataTable
DataTable的代碼(的函數,建立結構並返回它的內容):
DataTable dt = new DataTable();
dt.Columns.Add("Item");
dt.Columns.Add("Access1");
dt.Columns.Add("Access2");
dt.Columns.Add("Access3");
dt.Columns.Add("Access4");
dt.Columns.Add("Access5");
dt.TableName = "Permission";
return dt;
我已經在添加參數(匹配模式)設置typeof運算(字符串)試了一下,但沒沒有幫助。
DataTable的模式:在
<?xml version="1.0" standalone="yes"?>
<NewDataSet>
<xs:schema id="NewDataSet" xmlns="" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xs:element name="NewDataSet" msdata:IsDataSet="true" msdata:MainDataTable="Permission" msdata:UseCurrentLocale="true">
<xs:complexType>
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="Permission">
<xs:complexType>
<xs:sequence>
<xs:element name="Item" type="xs:string" minOccurs="0" />
<xs:element name="Access1" type="xs:string" minOccurs="0" />
<xs:element name="Access2" type="xs:string" minOccurs="0" />
<xs:element name="Access3" type="xs:string" minOccurs="0" />
<xs:element name="Access4" type="xs:string" minOccurs="0" />
<xs:element name="Access5" type="xs:string" minOccurs="0" />
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:choice>
</xs:complexType>
</xs:element>
</xs:schema>
</NewDataSet>
XML打算:
<?xml version="1.0" encoding="utf-16"?>
<Permissions>
<Permission>
<Item>Process 1</Item>
<Access1>True</Access1>
<Access2>True</Access2>
<Access3>False</Access3>
<Access4>False</Access4>
<Access5>False</Access5>
</Permission>
<Permission>
<Item>Process 2</Item>
<Access1>True</Access1>
<Access2>True</Access2>
<Access3>True</Access3>
<Access4>False</Access4>
<Access5>False</Access5>
</Permission>
</Permissions>
我有一種感覺它與我的表結構的事,但我不能確定它是不正確。
感謝您的幫助,您可以給
我做了一個變化在這個,但使用或多或少你做了什麼。我會添加我的修改以防萬一它幫助某人。謝謝。 – Robert 2011-03-11 16:12:14