Home > DeveloperSection > Blogs > Language Integrated Query (LINQ)

Language Integrated Query (LINQ)


LINQ LINQ 
Ratings:
0 Comment(s)
 1648  View(s)
Rate this:

Language Integrated Query (LINQ)

In this blog, I’m explaining the language integrated query and how to use it in our application.

LINQ stands for Language Integrated Query is a modern Microsoft technology. It provides the language level support mechanism to query all types of data.

Language-Integrated Query, or LINQ, is an extension to the .NET Framework in version 3.5 that makes queries and set operations first class citizens of .NET languages such as C#. It has been further defined as, "A set of general purpose standard query operators that allow traversal, filter, and projection operations to be expressed in a direct yet declarative way in any .NET language

Example

                              

Step 1:

Create a windows application and add a textbox and button and datagridview like this:

 

Step 2:

Create a list and add data in it:

public class Student

{

public string Name { get; set; }

public string Address { get; set; }

public string CourseName { get; set; }

public string ContactNumber { get; set; }

}

List<Student> students = new List<Student>();

 

students.Add(new Student { Name = "Mark", Address = "NewYork", CourseName = "M.B.A.", ContactNumber = "05127893628" });

           

students.Add(new Student { Name = "Steve", Address = "NewJersy", CourseName = "M.C.A.", ContactNumber = "0512734890" });

           

students.Add(new Student { Name = "John", Address = "LosAngeles", CourseName = "B.Tech", ContactNumber = "05127812345" });

Step 3:

Write the following linq query to get data in datagridview :

var query = from student in students

where student.Name.ToLower().Contains(searchText) ||

                            student.Address.ToLower().Contains(searchText) ||

                            student.CourseName.ToLower().Contains(searchText) ||

                            student.ContactNumber.ToLower().Contains(searchText)

                           

select student;

The above linq query will give you data that matches with your entered text.

Full Code:

 

public partial class frmStudentSearch : Form

{

  public class Student

  {

     public string Name { get; set; }

     public string Address { get; set; }

     public string CourseName { get; set; }

     public string ContactNumber { get; set; }

  }

  List<Student> students = new List<Student>();

  public frmStudentSearch()

  {

     InitializeComponent();

  }

private void Form1_Load(object sender, EventArgs e)

{

     students.Add(new Student { Name = "Mark", Address = "NewYork", CourseName = "M.B.A.", ContactNumber = "05127893628" });

           

students.Add(new Student { Name = "Steve", Address = "NewJersy", CourseName = "M.C.A.", ContactNumber = "0512734890" });

 

          students.Add(new Student { Name = "John", Address = "LosAngeles", CourseName = "B.Tech", ContactNumber = "05127812345" });

}

private void btnSearch_Click(object sender, EventArgs e)

{

  string searchText = txtSearch.Text.Trim().ToLower();

  if (!string.IsNullOrEmpty(searchText))

  {

    var query = from student in students

                            where student.Name.ToLower().Contains(searchText) ||

                            student.Address.ToLower().Contains(searchText) ||

                            student.CourseName.ToLower().Contains(searchText) ||

                            student.ContactNumber.ToLower().Contains(searchText)

                           

select student;

dataGridStudents.DataSource = query.ToList();

  }

}

}

Output

 

It will search anything that exists in the list like if you type Name, Address, Course name or Contact Number.


Don't want to miss updates? Please click the below button!

Follow MindStick