This type of filtering is not supported directly by EF.
One possible solution is to build dynamically a predicate like this:
member => (member.Division == divisions[0] && member.Department == departments[0])
|| (member.Division == divisions[1] && member.Department == departments[1])
...
|| (member.Division == divisions[N-1] && member.Department == departments[N-1]);
Here is how you can do that:
var parameter = Expression.Parameter(typeof(Member), "member");
var predicate = Expression.Lambda<Func<Member, bool>>(
Enumerable.Range(0, divisions.Length)
.Select(i => new Expression[]
{
Expression.Equal(Expression.Property(parameter, "Division"), Expression.Constant(divisions[i])),
Expression.Equal(Expression.Property(parameter, "Department"), Expression.Constant(departments[i])),
}
.Aggregate(Expression.AndAlso))
.Aggregate(Expression.OrElse),
parameter);
var query = members.Where(predicate);