在表达式查询中使用if else
本文关键字:if else 表达式 查询 | 更新日期: 2023-09-27 18:05:56
假设我有一个linq表达式查询。
function a(DateTime timestamp){
from c in categories
***
if(dateTime is not null)
//add where statement like c.UpdateDate < timestamp
***
select new Item
{
}
}
当传入函数的时间戳不为空时,我想在查询中添加if语句。
随你的便建立你的查询。
var query = from c in categories select c;
if (dateTime is not null) {
query = query.Where(c => c.UpdateDate < dateTime);
}
var results = query.Select(x => new Item { ... }).ToArray();
另一个选项是:
var query = from c in categories
where (dateTime == null || c.UpdateDate < dateTime)
select new Item { ... };
注意:这会在SQL中创建相同的条件。