Click here to Skip to main content
65,938 articles
CodeProject is changing. Read more.
Articles / LINQ

LINQ – Element Operations

5.00/5 (1 vote)
12 Jan 2014CPOL 11.2K  
Element operations in LINQ

LINQ

In the last blog post, we discussed about Click Event and Change Event in jQuery. You can read that article here. In this article, we will go over Element Operations in LINQ.

Different Element Operations in LINQ are as follows:

  • ElementAt/ElementAtOrDefault - Returns the element at a specified index
    • Look at the example code below. We have a sequence of 2 strings, Hello and World. If we write notEmpty.ElementAt(1), we will get World as output. So this is zero based indexing and World is the element at position 1.
  • First/FirstOrDefault - Returns the first element of a collection
    • You may use this Element Operation quite frequently with queries, particularly when working with databases. So using this operation, instead of getting back an IEnumerable collection, we will just get back one element reference.
  • Last/LastOrDefault – Returns the last element of a collection
  • Single/SingleOrDefault - Returns a single element
    • This Element Operator returns a single element instead of getting IEnumerable collection. So it is almost similar to First/FirstOrDefault operator. The primary difference is that, with Single, if there isn’t just one result in the sequence, it will throw an exception.

Example

C#
sting[] empty={ };
sting[] notEmpty={ "Hello","World"};
var result=empty.FirstOrDefault(); //null
result=notEmpty.Last();            //World
result=notEmpty.ElementAt(1);      //World
result=empty.First();              //InvalidOperationException
result=notEmpty.Single();         //InvalidOperationException
result=notEmpty.First(s=>s.StartsWith("W"));

Reference

License

This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)