24
|
Programmin Tool · 技术社区 · 15 年前 |
![]() |
1
24
我知道这已经很老了,但我想完成与OP完全相同的任务,不想使用
我最终为IQueryable创建了一个扩展方法,名为
我不确定这是否是一个好的解决方案,但下面的示例确实适用于
|
![]() |
2
13
实体框架使这一点变得困难,我不确定是否有一种方法可以处理单个返回值类型(IComparable、object等)。您可能会考虑将您的设计改写为名称词典。
然后像这样应用它:
|
![]() |
3
5
以下方法提供了到表达式的转换<Func<T、 TKey>&燃气轮机;调用各种“OrderBy”方法(使用反射-道歉…)时,请注意,它们最初封装在一个泛型类OrderBy中<T>。
|
![]() |
4
4
我找到了解决你(我也是)问题的简单方法。当您创建搜索表达式时,您应该传递属性的类型(您知道它),但将表达式存储在动态变量中:
现在,您可以将dynExpr与int表达式、字符串表达式等一起存储在表中或任意位置。。。当时机成熟时,您可以在OrderBy方法中使用它。但不是以标准方式(扩展方法):
通过这种方式,您可以在所有排序函数(OrderBy、OrderByDescending、ThenBy、ThenByDescending)中使用一个表达式。 |
![]() |
5
1
在OldNic的启发下,我创建了两种按成员排序的扩展方法。这对我很有用。我还使用System.Data.SqlClient.SortOrder枚举定义排序顺序。
|
![]() |
Drago · Linq通过比较Id和具有Id的对象列表来查询获取列表 2 年前 |
![]() |
Niyazi Babayev · 如何在表达式中动态应用表达式? 2 年前 |
![]() |
Murat Güzel · EF存储库模式错误{'Id'}已被跟踪 2 年前 |
![]() |
dotnetdevcsharp · 减少基于数据类型获取设置的方法数量 3 年前 |
![]() |
saravanan049 · 在实体框架中回滚Azure SQL数据库 3 年前 |