I am trying to do a multiple where clause in linq that looks like the following:
.Where(x => x.Division == item.Division)
.Where( x => x.ProductID == item.ProductID)
.Where( x => item.supplierNumber == item.supplierNumber)
.Where(x => item.OpcoID == item.OpcoID);
when I spit out the SQL it looks like this
WHERE ( ( [extent1].[Division] = @p__linq__0 )
OR ( ( [extent1].[Division] IS NULL )
AND ( @p__linq__0 IS NULL ) ) )
AND ( ( [extent1].[ProductID] = @p__linq__1 )
OR ( ( [extent1].[ProductID] IS NULL )
AND ( @p__linq__1 IS NULL ) ) )
AND ( ( @p__linq__2 = @p__linq__3 )
OR ( ( @p__linq__2 IS NULL )
AND ( @p__linq__3 IS NULL ) ) )
AND ( ( @p__linq__4 = @p__linq__5 )
OR ( ( @p__linq__4 IS NULL )
AND ( @p__linq__5 IS NULL ) ) )
notice the
[Extent1].[Division] = @p__linq__0) OR (([Extent1].[Division] IS NULL)
I don't want it to include the or I just want it to be
where Division = @p_Linq_0 and [Extent1].[ProductID] = @p_Linq_1
What am I doing wrong ?