4

I have object with ID = 5, ID = 6 and List 1,5. Since list has 5 i need to have object with ID = 5 as a result, but if my list has 5 and 6 i need to have both objects as a result. Hope i'm clear enough.

So something like this:

result = result.Where(r=>r.ID ***IS IN LIST<int>***).OrderBy(r=>r.ID);

Any help is appreciated.

azza idz
  • 623
  • 3
  • 13
  • 27

4 Answers4

7
result = result.Where(r=>listOfId.Contains(r.ID)).OrderBy(r=>r.ID);
deramko
  • 2,807
  • 1
  • 18
  • 27
4

You can try like this:

result = result.Where(r => somelist.Contains(r.ID)).OrderBy(r => r.ID)

Check List(Of T).Contains Method for details.

Rahul Tripathi
  • 168,305
  • 31
  • 280
  • 331
3
 result = result.Where(r=>yourList.Contains(r.ID)).OrderBy(r=>r.ID)
alek kowalczyk
  • 4,896
  • 1
  • 26
  • 55
2

something easier to read

var results=(from m in MyObjects
            Where myList.Contains(m.Id)
            select m).ToList() ;
Rohit
  • 10,056
  • 7
  • 50
  • 82