我有一个查询
return uow.CustomerRepo
.Get()
.Where
(
c=>
c.Firstname.StartsWith(customerSearch.Initial) &&
c.Surname == customerSearch.Surname &&
c.Email == customerSearch.Email &&
c.Postcode == customerSearch.PostCode
)
Run Code Online (Sandbox Code Playgroud)
如果某些内容customerSearch为空,有没有办法跳过部分查询?
所以我想跳过这部分
c.Surname == customerSearch.Surname
Run Code Online (Sandbox Code Playgroud)
如果
customerSearch.Surname
Run Code Online (Sandbox Code Playgroud)
是空的
您可以使用customerSearch明确检查零件的条件来执行此操作:
.Where
(
c=>
(customerSearch.Initial == null || c.Firstname.StartsWith(customerSearch.Initial)) &&
(customerSearch.Surname == null || c.Surname == customerSearch.Surname) &&
(customerSearch.Email == null || c.Email == customerSearch.Email) &&
(customerSearch.PostCode == null || c.Postcode == customerSearch.PostCode)
)
Run Code Online (Sandbox Code Playgroud)
如果您需要检查空字符串而不是null,请相应地更改条件。
| 归档时间: |
|
| 查看次数: |
54 次 |
| 最近记录: |