P18 写代码:过滤和搜索

EmployeeDto的属性字段比较多。我们可以针对它的某个属性字段进行过滤。
P18 写代码:过滤和搜索
model类实际上是一个枚举。dto内是一个字符串。
P18 写代码:过滤和搜索
我们在过滤的时候只能针对dto进行过滤。不能针对这个枚举类型进行过滤。
P18 写代码:过滤和搜索
添加需要过滤的字段
P18 写代码:过滤和搜索
参数从查询参数里面获取
P18 写代码:过滤和搜索
如果传进来的参数名称和定义的不一样 可以这么去配置
P18 写代码:过滤和搜索

P18 写代码:过滤和搜索
如果为空就不进行过滤。
P18 写代码:过滤和搜索
需要先把字符串变成gender这个类型。
P18 写代码:过滤和搜索
修改接口也是两个参数
P18 写代码:过滤和搜索

运行测试

P18 写代码:过滤和搜索

搜索

P18 写代码:过滤和搜索
搜索关键字,习惯性的参数叫做q
P18 写代码:过滤和搜索
接口加参数
P18 写代码:过滤和搜索
实现类加参数
P18 写代码:过滤和搜索
Repository
P18 写代码:过滤和搜索
这里首先把Employee转换IQueryable类型的。
P18 写代码:过滤和搜索
全文检索,通常使用全文检索的引擎,这里我们只是简单的做一下。我们可能就是针对其中某两个字段,来进行下模糊搜索。
P18 写代码:过滤和搜索

测试搜索

http://localhost:5000/api/companies/bbdee09c-089b-4d30-bece-44df5923716c/employees?gender=男&q=m

P18 写代码:过滤和搜索
控制台也可以看到执行的sql语句
P18 写代码:过滤和搜索
 

结束

 

相关文章: