反骨仔 发布于 问题 在业务开发中,经常要处理比较复杂的查询条件,如下图: 如果任一输入有值,则必须作为查询条件之一。 示例代码如下: 1 2 3 4 5 6 7 8 9 10 11 IQueryable<User> query =
反骨仔 发布于 什么是卫语句 在方法的开头,我们经常会添加一些检查代码,当检查条件为 true 时立刻从方法中返回。 这样的单独检查代码被称为“卫语句”。 例如,我们在添加
反骨仔 发布于 前言 上次,我们介绍了 Pitcher,可以帮我们简化卫语句: 1 2 3 4 5 6 7 8 9 public User(string name, int age) { Throw.When(string.IsNullOrWhiteSpace(name), new ArgumentNullException(nameof(name))); Throw.When(age <= 0, new ArgumentOutOfRangeException(nameof(age))); //正常业务逻辑 this.Name = name; this.Age = age; } 但是,
反骨仔 发布于 前言 ASP.NET Core 的 Middleware(中间件)使用了管道模式: Request (请求)在管道中传递,依次经过管道中的每一个 MiddleWare 进行处理。 MiddleWare 就像一层层的“滤网”,过
反骨仔 发布于 前言 使用 IPipelineBehavior,介绍如何在业务层实现记录请求日志,用于跟踪每个请求执行的耗时。 Demo 创建 ASP.NET Core Web API 项目,引用 Nuget 包: 1 2