如果我有一个动态创建的ParameterExpression
:
class Product
{
public string Name { get; set; }
}
var propertyName = "Name";
var propertyType = typeof(Product).GetProperty(propertyName).PropertyType;
var parameterExpression = Expression.Parameter(propertyType , propertyName);
如何将其转换为qazxsw poi?
我特意想把它传递给
Func<Product, TPropertyType>
或实体框架使用的Where
linq方法。
我也对不使用OrderBy
的其他建议持开放态度,但我非常怀疑它是否有可能。
编辑1:删除了Expressions
用例,因为where
和Where
将有不同的实现删除以试图缩小问题的范围。
这是一个为OrderBy
和OrderBy
生成表达式的示例。正如Johnathon Sullinger在评论中所说,你必须知道你在编译时订购的属性类型,因为它在Where
的签名中提到。但是你不必知道OrderBY
:
Where
希望能帮助到你。