gpt4 book ai didi

c# - 使用方法参数作为泛型类型参数

转载 作者:太空宇宙 更新时间:2023-11-03 14:01:25 24 4
gpt4 key购买 nike

我有一个保存搜索参数的类 (SearchParameters),然后我使用一个名为 Querybuilder 的通用类基于这些创建一个 linq 查询。这将返回结果并且一切正常。

结果显示在GridView中,我目前正在为gridivew实现自定义排序,我将要搜索的字段添加到SearchParameters对象(使用流畅的界面)

SearchParameters=SearchParameters.SortResultsBy(e.SortExpression,e.NewSortOrder.ToString());

我需要将列的数据类型用作我的 AddOrderByClause() 方法的通用参数:

    public void AddOrderByClause<D>(string field, Type sourceDateType)
{
var orderExpression = Expression.Lambda<Func<T, D>>(Expression.Property(resultExpression, field), resultExpression);

rootExpression = Expression.Call(
typeof(Queryable),
"OrderBy",
new Type[] { typeof(T), typeof(D) },
rootExpression,
orderExpression);

}

我可以很容易地找到列的数据类型,但我如何将它传递给 AddOrderByClause()(通用参数 D)?

最佳答案

public void AddOrderByClause<D,E>(string field, E sourceDataType)
{
.....
}

关于c# - 使用方法参数作为泛型类型参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10634260/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com