Question : c# linq - "NOT IN"

hi there,

i am using c# 3.5.
I am building up an IQueryable linq query - which i will execute once i have added all of the clauses.

Essentially, i have a list of int's and i want to add a clause to my query - that says

"give me all customers whose id is NOT IN my list of previously selected customer id's"

i.e give me NEW customers...



here is my code sofar:
 public IQueryable<Customer> CreateQuery(IList<int> previouslySelectedCustomerIds, IQueryable<Customer> query)
{
            if (query == null)
            {
                throw new ArgumentNullException("query");
            }
           
      return query.Join(previouslySelectedCustomerIds, c => c.Customer.Id, us => psc, (c, psc) => c);
     
}

unfortunately - this joins to the previously selected customers - rather than excluding them!

can anyone help

than ks



Answer : c# linq - "NOT IN"

Hi MrKevorkian;

Try the return statement like this:

return query.Where( c => !previouslySelectedCustomerIds.Contains(c.Id))

Fernando
Random Solutions  
 
programming4us programming4us