目標是從XML填充數據集,排序其中一個DataTable,然後將排序的DataSet寫回XML。在讀取和寫入XML之間對DataSet進行排序
我似乎無法排序我的數據集,並嘗試了一些變化。它增加了數據,但沒有排序。希望有人能幫助阻止我拉我的頭髮。
DataSet dsXml = new DataSet();
dsXml.ReadXml(msXml);
DataTable tbl;
// Read DataTable.
tbl = dsXml.Tables["cj"];
// Set Primary Key
tbl.PrimaryKey = new DataColumn[] { tbl.Columns["a"] };
DataView dtView = tbl.DefaultView;
DataRow foundRow = tbl.Rows.Find(findCookiejarId);
tbl.Rows.Add(addRow);
dtView.ToTable().Sort = "a ASC";
StringWriter sw = new StringWriter();
dsXml.WriteXml(sw);
UPDATE
現在它會從數據集中的其他表。這是XML應該如何看:
<user_data>
<settings>
<a></a>
<b></b>
<c></c>
</settings>
<perms>
<a></a>
<b></b>
<c></c>
</perms>
<cj>
<a></a>
<b></b>
<c></c>
</cj>
<cj>
<a></a>
<b></b>
<c></c>
</cj>
<cj>
<a></a>
<b></b>
<c></c>
</cj>
</user_data>
而且它看起來像這樣,除去其他表,但那種工作得很好:)
</DocumentElement>
<cj>
<a></a>
<b></b>
<c></c>
</cj>
<cj>
<a></a>
<b></b>
<c></c>
</cj>
<cj>
<a></a>
<b></b>
<c></c>
</cj>
</DocumentElement>
我如何使用C#來排序只是數據表cj
,然後將整個DataSet寫回XML? settings
和perms
應保持不變。
非常感謝先生,只是這份工作! – arbme 2010-07-22 17:06:46