我有一个 Linq( Entity Framework )查询作为
function getData(string col_to_sort , bool IsAscending , int pageNo , int pageSize)
{
context.table_name.Skip(pageNo*pageSize).Take(pageSize).ToArray();
}
我想要的是,如果我将列的名称作为参数传递给函数
以及它也会对我的查询进行排序的顺序。
由于我的列名将是一个字符串,因此我们可能需要将其转换为 ObjectQuery。
我怎样才能做到这一点?
任何帮助表示赞赏
最佳答案
您可以使用 Dynamic Linq :
string direction = IsAscending ? " ASC" : " DESC";
context.table_name.OrderBy(col_to_sort + direction).Skip(pageNo*pageSize).Take(pageSize).ToArray();
关于Linq Order by 当列名是动态的并作为字符串传递给函数时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8398453/