Filtering data in LINQ with the help of where clause
LINQ has bought with itself a super power of querying Objects, Database, XML, SharePoint and nearly any other data structure. The power of LINQ lies in the fact that it is managed code that lets you write SQL type code to fetch data.
Whenever working with data we always need a way to filter out the data based on different condition. In this post we will look at some of the different ways in which we can filter data in LINQ with the help of where clause.
Simple Filter for an
array.
Let’s say we have an array of number and we want to filter out data based on some condition. Below is an example
int[] numbers = { 5, 4, 1, 3, 9, 8, 6, 7, 2, 0 };
var lowNums =
from num in numbers
where num < 5
select num;
Filter based on one of the
property in the class.
With the help of LINQ we can also filer out data from a list based on value of some property.
var soldOutProducts =
from prod in products
where prod.UnitsInStock == 0
select prod;
Filter based on Multiple of
the property in the class.
var expensiveInStockProducts =
from prod in products
where prod.UnitsInStock > 0 && prod.UnitPrice > 3.00M
select prod;
Filter based on the index of the
Item in the list.
In the below example we can see that we are able to filter
data based on the index of the item in the list.
string[] digits = { "zero", "one", "two", "three", "four", "five", "six"};
var shortDigits = digits.Where((digit, index) => digit.Length < index);
There are many other way in
which we can filter out data in LINQ. In the above post I have tried and shown
few ways using the LINQ.
Vikram