我想創建一個Expression<Func<IQueryable<T>, IOrderedQueryable<T>>>
,我有以下代碼:創建表達式<Func <IQueryable <T>,IOrderedQueryable <T> >>?
Expression selector = q => q.RegistrationDate
MethodInfo orderByMethodInfo = typeof(Queryable).GetMethods().First(method => method.Name == "OrderBy" && method.GetParameters().Count() == 2).MakeGenericMethod(argumentTypes);
MethodInfo orderByDescMethodInfo = typeof(Queryable).GetMethods().First(method => method.Name == "OrderByDescending" && method.GetParameters().Count() == 2).MakeGenericMethod(argumentTypes);
我要創建c => c.OrderBy(q => q.RegistrationDate)
或c => c.OrderByDescending(q => q.RegistrationDate)
或一般類似c => c.OrderByDescending(q => q.RegistrationDate).ThenBy(q=>q.Name)
從上面的代碼。
請你指導我如何做到這一點?
你可以爲此使用[LINQKit(http://www.albahari.com/nutshell/linqkit.aspx)。 – svick
如何?你能否描述更多? –