我試圖爲文檔系統的XML文件添加排序,包括日期修改條目。Xpath表達式Addsort方法
基本上我有一個gridview來顯示所有文檔列表的XML,並且在顯示之前我正在對數據運行addsort。
每個文件都有一個標籤,包含true或false,然後是發佈日期(這些是完整的文檔,因此不需要修改),當文檔被修改時,標籤一旦完成就被更改爲true它在標籤上發佈了一個日期。
對於客戶需要的正確順序是修改日期 - >修改日期 - >修改標籤爲false的訂單。
目前,我有按標題排序:
StringReader str = new StringReader(PLCDocsXML.InnerXml);
XPathDocument doc = new XPathDocument(str);
XPathNavigator navigator2 = PLCDocsXML.CreateNavigator();
XPathExpression subselectExpression = navigator2.Compile(XpathExpr);
if (asc)
{
subselectExpression.AddSort("title", XmlSortOrder.Ascending, XmlCaseOrder.None, "", XmlDataType.Text);
}
的XML是這樣的:
<result>
<document>
<title>Title</title>
<otherstuff />
<modified>[true/false]<modified> #those with true first before false
<publishdate /> #if not got a publish date
<publishdate>2009-10-16</publishDate>
</document>
</result>
所以我需要的順序是:
<result>
<document>
<title>Title1</title>
<otherstuff />
<modified>true<modified>
<publishdate />
</document>
<document>
<title>Title4</title>
<otherstuff />
<modified>true<modified>
<publishdate>2010-11-27</publishDate>
</document>
<document>
<title>Title2</title>
<otherstuff />
<modified>true<modified>
<publishdate>2009-10-16</publishDate>
</document>
<document>
<title>Title3</title>
<otherstuff />
<modified>false<modified>
<publishdate />
</document>
</result>
感謝您的幫助你可以給