Linq2SQL checks if null
foreach (incident var in new DataAccess.IncidentRepository (). GetItems (). Where (i => (startDate == null || i.IncidentDate> = startDate) & & (endDate == null || i.IncidentDate <= endDate ) & & (shiftId == null || i.ShiftId == shiftId) & & (processAreaId == null || i.ProcessAreaId == processAreaId) & & (plantId == null || i.PlantId == plantId)) )
Is there a way I can i.PlantId == plantId
skip adding if plantId
there is one null
?
thanks
0
jeanre
a source
to share
2 answers
var incident in new DataAccess.IncidentRepository().GetItems().Where(
i => i.IncidentDate >= startDate
&& i.IncidentDate <= endDate
&& i.ShiftId == shiftId
&& i.ProcessAreaId == processAreaId
&& (plantId == null || i.PlantId == plantId)))
Alternatively, you can:
var incidents = new DataAccess.IncidentRepository().GetItems().Where(
i => i.IncidentDate >= startDate
&& i.IncidentDate <= endDate
&& i.ShiftId == shiftId
&& i.ProcessAreaId == processAreaId));
if (plantId != null)
incidents = incidents.Where(i => i.PlantId == plantId);
foreach (var incident in incidents) {
// ...
}
+2
a source to share