Sfoglia il codice sorgente

2003-07-27 Piers Haken <[email protected]>

	* Expression.cs:
		fix case sorting order
		allow EvaluateNumber to take XPathResultType.Any

svn path=/trunk/mcs/; revision=16754
Piers Haken 22 anni fa
parent
commit
10fd05dc67

+ 6 - 0
mcs/class/System.XML/System.Xml.XPath/ChangeLog

@@ -1,3 +1,9 @@
+2003-07-27  Piers Haken	<[email protected]>
+
+	* Expression.cs:
+		fix case sorting order
+		allow EvaluateNumber to take XPathResultType.Any
+
 2003-07-27  Piers Haken	<[email protected]>
 
 	* Expression.cs:

+ 3 - 1
mcs/class/System.XML/System.Xml.XPath/Expression.cs

@@ -244,7 +244,7 @@ namespace System.Xml.XPath
 					public XPathTextComparer (XmlSortOrder orderSort, XmlCaseOrder orderCase, string strLang)
 					{
 						_orderCase = orderCase;
-						_nMulCase = (orderCase == XmlCaseOrder.LowerFirst) ? -1 : 1;
+						_nMulCase = (orderCase == XmlCaseOrder.UpperFirst) ? -1 : 1;
 
 						_nMulSort = (orderSort == XmlSortOrder.Ascending) ? 1 : -1;
 
@@ -330,6 +330,8 @@ namespace System.Xml.XPath
 					return (double) result;
 				case XPathResultType.Boolean:
 					return Convert.ToDouble ((bool) result);
+				case XPathResultType.NodeSet:
+					return XmlConvert.ToDouble (EvaluateString (iter));
 				case XPathResultType.String:
 					return XmlConvert.ToDouble ((string) result);	// TODO: spec? convert string to number
 				default: