Mat*_*haq 4 c# linq entity-framework
My Linq 查询
var result = db.APPLICATIONS
.Where(a => Statuses.Contains(a.STATUS_ID))
.Where(a => a.TrackingNo == TrackingNo)
Run Code Online (Sandbox Code Playgroud)
Statuses是一个 int 列表并且TrackingNo是一个可以为 null 的 int ( int?)。
问题:
如果TrackingNo为空,那么我不想运行此子句或只是跳过此条件。
LINQ 查询可以通过多个步骤构建:
var result = db.APPLICATIONS
.Where(a => Statuses.Contains(a.STATUS_ID));
if (TrackingNo != null)
{
result = result.Where(a => a.TrackingNo == TrackingNo);
}
Run Code Online (Sandbox Code Playgroud)
请注意,如果您有Select(投影),您可能必须在多个变量中分多个步骤构建查询:
var result2 = result.Select(a => new { a.STATUS_ID });
Run Code Online (Sandbox Code Playgroud)
result2后面加“建” if。
| 归档时间: |
|
| 查看次数: |
3476 次 |
| 最近记录: |