C# System.Linq.Expressions.Expression<;Func<;t来源,TKey>>;?
我试图在数据结构中存储LinqC# System.Linq.Expressions.Expression<;Func<;t来源,TKey>>;?,c#,linq,expression,C#,Linq,Expression,我试图在数据结构中存储LinqOrderBy子句所需的表达式,因此我可以直接转到query=query.OrderBy(MySortExpression) OrderBy将System.Linq.Expressions.Expression作为参数TSource是您正在排序的实体类型,但是TKey应该是什么类型?TKey是表达式返回类型的类型。例如: users.OrderBy(user => user.Name); 由于Name是string,因此类型将是System.Linq.Ex
OrderBy
子句所需的表达式,因此我可以直接转到query=query.OrderBy(MySortExpression)代码>
OrderBy
将System.Linq.Expressions.Expression
作为参数TSource
是您正在排序的实体类型,但是TKey
应该是什么类型?TKey是表达式返回类型的类型。例如:
users.OrderBy(user => user.Name);
由于Name是string,因此类型将是System.Linq.Expressions。Expression
TKey是表达式的返回类型的类型。例如:
users.OrderBy(user => user.Name);
由于名称是string,因此类型将是System.Linq.Expressions.Expression
该TKey
未绑定到特定类型。通常是将属性投影到基元类型以启用排序
假设一个人
有你要选择的出生年份
财产
persons.OrderBy(p => p.BirthYear);
TKey
未绑定到特定类型。通常是将属性投影到基元类型以启用排序
假设一个人
有你要选择的出生年份
财产
persons.OrderBy(p => p.BirthYear);
TKey
是一个泛型类型参数,表示对其进行排序的表达式的类型。例如,如果按长度对字符串排序,TSource
将是string
,TKey
将是int
,如下代码所示:
string [] myStrings = new[] {"quick", "brown", "fox", "jumps"};
var ordered = myStrings.OrderBy(s => s.Length);
TKey
是一个泛型类型参数,表示对其进行排序的表达式的类型。例如,如果按长度对字符串排序,TSource
将是string
,TKey
将是int
,如下代码所示:
string [] myStrings = new[] {"quick", "brown", "fox", "jumps"};
var ordered = myStrings.OrderBy(s => s.Length);