فهرست منبع

2008-05-03 Jb Evain <[email protected]>

	* Queryable.cs (OrderBy, OrderByDescending): fix signature and
	properly return a IOrderedQueryable<>.


svn path=/trunk/mcs/; revision=102401
Jb Evain 17 سال پیش
والد
کامیت
df6203c656
2فایلهای تغییر یافته به همراه13 افزوده شده و 8 حذف شده
  1. 5 0
      mcs/class/System.Core/System.Linq/ChangeLog
  2. 8 8
      mcs/class/System.Core/System.Linq/Queryable.cs

+ 5 - 0
mcs/class/System.Core/System.Linq/ChangeLog

@@ -1,3 +1,8 @@
+2008-05-03  Jb Evain  <[email protected]>
+
+	* Queryable.cs (OrderBy, OrderByDescending): fix signature and
+	properly return a IOrderedQueryable<>.
+
 2008-05-02  Jb Evain  <[email protected]>
 
 	* SortSequenceContext.cs (Compare): fix key equality case

+ 8 - 8
mcs/class/System.Core/System.Linq/Queryable.cs

@@ -947,22 +947,22 @@ namespace System.Linq {
 
 		#region OrderBy
 
-		public static IQueryable<TSource> OrderBy<TSource, TKey> (this IQueryable<TSource> source, Expression<Func<TSource, TKey>> keySelector)
+		public static IOrderedQueryable<TSource> OrderBy<TSource, TKey> (this IQueryable<TSource> source, Expression<Func<TSource, TKey>> keySelector)
 		{
 			Check.SourceAndKeySelector (source, keySelector);
 
-			return source.Provider.CreateQuery<TSource> (
+			return (IOrderedQueryable<TSource>) source.Provider.CreateQuery<TSource> (
 				StaticCall (
 					MakeGeneric (MethodBase.GetCurrentMethod (), typeof (TSource), typeof (TKey)),
 					source.Expression,
 					Expression.Quote (keySelector)));
 		}
 
-		public static IQueryable<TSource> OrderBy<TSource, TKey> (this IQueryable<TSource> source, Expression<Func<TSource, TKey>> keySelector, IComparer<TKey> comparer)
+		public static IOrderedQueryable<TSource> OrderBy<TSource, TKey> (this IQueryable<TSource> source, Expression<Func<TSource, TKey>> keySelector, IComparer<TKey> comparer)
 		{
 			Check.SourceAndKeySelector (source, keySelector);
 
-			return source.Provider.CreateQuery<TSource> (
+			return (IOrderedQueryable<TSource>) source.Provider.CreateQuery<TSource> (
 				StaticCall (
 					MakeGeneric (MethodBase.GetCurrentMethod (), typeof (TSource), typeof (TKey)),
 					source.Expression,
@@ -974,22 +974,22 @@ namespace System.Linq {
 
 		#region OrderByDescending
 
-		public static IQueryable<TSource> OrderByDescending<TSource, TKey> (this IQueryable<TSource> source, Expression<Func<TSource, TKey>> keySelector)
+		public static IOrderedQueryable<TSource> OrderByDescending<TSource, TKey> (this IQueryable<TSource> source, Expression<Func<TSource, TKey>> keySelector)
 		{
 			Check.SourceAndKeySelector (source, keySelector);
 
-			return source.Provider.CreateQuery<TSource> (
+			return (IOrderedQueryable<TSource>) source.Provider.CreateQuery<TSource> (
 				StaticCall (
 					MakeGeneric (MethodBase.GetCurrentMethod (), typeof (TSource), typeof (TKey)),
 					source.Expression,
 					Expression.Quote (keySelector)));
 		}
 
-		public static IQueryable<TSource> OrderByDescending<TSource, TKey> (this IQueryable<TSource> source, Expression<Func<TSource, TKey>> keySelector, IComparer<TKey> comparer)
+		public static IOrderedQueryable<TSource> OrderByDescending<TSource, TKey> (this IQueryable<TSource> source, Expression<Func<TSource, TKey>> keySelector, IComparer<TKey> comparer)
 		{
 			Check.SourceAndKeySelector (source, keySelector);
 
-			return source.Provider.CreateQuery<TSource> (
+			return (IOrderedQueryable<TSource>) source.Provider.CreateQuery<TSource> (
 				StaticCall (
 					MakeGeneric (MethodBase.GetCurrentMethod (), typeof (TSource), typeof (TKey)),
 					source.Expression,