首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏菩提树下的杨过

    linq to sql的多条件动态查询(下)

    借助老外写的一个扩展表达式的类,可以把上篇中的代码写得更优雅 这是PredicateBuilder的源文件 public static class PredicateBuilder { Expression.And (expr1.Body, invokedExpr), expr1.Parameters); } } 下面是使用示例 : public static class PredicateBuilder

    3.7K90发布于 2018-01-24
  • 来自专栏DotNet NB && CloudNative

    在 .NET 中优化 API 性能:使用分页、筛选和投影实现高效的数据检索

    PredicateBuilder 创建灵活的动态过滤器。 IQueryable 替换为延迟执行,以便仅在必要时提取数据。 用于一致地处理分页和排序的自定义属性。 static Expression<Func<Project, bool>> CreateFilter(ProjectFilterDto filterDto) { var predicate = PredicateBuilder.True TResult>().ToListAsync(); return new PagedReadOnlyCollection<TResult>(list, totalCount); } 动态表达式构建PredicateBuilder 这有助于创建灵活的数据筛选条件:PredicateBuilder public static class PredicateBuilder { public static Expression

    2.5K10编辑于 2024-11-23
  • 来自专栏菩提树下的杨过

    linq to sql中慎用Where<T>(Func<TSource, bool> predicate),小心被Linq给"骗"了!

    Main(string[] args) { //Expression<Func<T_Test, bool>> _Expression = PredicateBuilder.True Console.ReadKey(); } } } 代码很简单,找出F_Name中包含字母"J",F_Age大于20的记录,并且跳过第一个后,仅获取一条记录 注:PredicateBuilder 3 using System.Linq.Expressions; 4 5 namespace CNTVS.LINQ 6 { 7 8 public static class PredicateBuilder 即 1static void Main(string[] args) { Expression<Func<T_Test, bool>> _Expression = PredicateBuilder.True

    1.5K50发布于 2018-01-24
  • 来自专栏深蓝居

    动态Linq的逻辑与和逻辑或的条件查询

    这个在之前的项目中用过,特别强大,但是在这里用起来不是很方便,所以又想自己实现一套动态OR查询的方法,结果由于时间和能力有限,也没有做出来,最后终于找到一个很好的类库LinqKit,这个类库中有一个 PredicateBuilder                 string[] items = name.Split(' '); //各个Item之间是or的关系 空格区分                 var predicate = PredicateBuilder.False

    2.5K10编辑于 2022-06-16
  • 来自专栏程序猿DD

    SpringBoot + QueryDSL 大大简化复杂查询操作

    static final String QUERY_LOGIC_AND = " AND ";       private void generateQueryBuilderWithQueryString(PredicateBuilder com.querydsl.core.types.dsl.BooleanExpression;   /**  * This class is mainly used to classify all the query parameters  */ public class PredicateBuilder SearchCriteria> paramsAnd;       private BusinessPartnerMessageProvider messageProvider;          public PredicateBuilder messageProvider){         paramsOr = new ArrayList<>();         paramsAnd = new ArrayList<>();     }       public PredicateBuilder SearchCriteria(keyAfterConverted, operation, valueAfterConverted));         return this;     }       public PredicateBuilder

    2.2K20编辑于 2022-05-25
  • 来自专栏c#开发者

    基于领域驱动设计(DDD)超轻量级快速开发架构(二)动态linq查询的实现方式

    field,op,value生成一个linq 表达式,不用再做繁琐的判断,这块代码也可以被其它项目使用,非常好用 namespace SmartAdmin { public static class PredicateBuilder string order = "asc", string filterRules = "") 2 { 3 try 4 { 5 var filters = PredicateBuilder.FromFilter

    1.2K20发布于 2020-06-23
  • 来自专栏CodeSpirit

    CodeSpirit CRUD开发完整指南

    Task<PageList<EmployeeDto>> GetEmployeesAsync(EmployeeQueryDto queryDto) { var predicate = PredicateBuilder.New 重写ValidateCreateDto和ValidateUpdateDto方法实现业务验证(工号唯一性、部门存在性等) • 重写OnCreating方法设置租户ID和生成ID • 使用LinqKit的PredicateBuilder IScopedDependency接口自动注册 • 重写ValidateCreateDto和ValidateUpdateDto实现业务验证 • 重写OnCreating方法设置租户ID和生成ID • 使用LinqKit的PredicateBuilder

    12110编辑于 2026-01-14
  • 来自专栏c#开发者

    基于领域驱动设计(DDD)超轻量级快速开发架构

    string filterRules = "", string sort = "Id", string order = "asc") 31 { 32 var filters = PredicateBuilder.FromFilter order = "asc", string filterRules = "") 24 { 25 try 26 { 27 var filters = PredicateBuilder.FromFilter

    4.2K30发布于 2020-06-23
领券