LINQ | Query Syntax - GeeksforGeeks

21 May, 2019
LINQ query syntax is consist of a set of query keywords defined into the .NET Framework version 3.5 or Higher. This allows the programmer or developers to write the commands similar to SQL style in the code(C# or VB.NET) without using quotes. It is also know as the Query Expression Syntax. In LINQ, you can write the query to IEnumerable collection or IQueryable data sources using the following ways:
Query SyntaxMethod Syntax
Query Syntax
Method Syntax
Here, we will discuss the Query Syntax only.
The LINQ query syntax begins with from keyword and ends with the Select or GroupBy keyword. After from keyword you can use different types of Standard Query Operations like filtering, grouping, etc. according to your need. In LINQ, 50 different types of Standard Query Operators are available.
Creating first LINQ Query using Query Syntax in C#
Step 1: First add System.Linq namespace in your code.using System.Linq;
using System.Linq;
Step 2: Next, create data source on which you want to perform operations. For example:List my_list = new List(){
        "This is my Dog",
        "Name of my Dog is Robin",
        "This is my Cat",
        "Name of the cat is Mewmew"
    };

List my_list = new List(){
        "This is my Dog",
        "Name of my Dog is Robin",
        "This is my Cat",
        "Name of the cat is Mewmew"
    };

Step 3: Now create the query using the query keywords like select, from, etc. For example:    
var res = from l in my_list
              where l.Contains("my")
              select l;
Here res is the query variable which stores the result of the query expression. The from clause is used to specify the data source, i.e, my_list, where clause applies the filter, i.e, l.Contains(“my”) and select clause provides the type of the returned items. And l is the range variable.
    
var res = from l in my_list
              where l.Contains("my")
              select l;

Here res is the query variable which stores the result of the query expression. The from clause is used to specify the data source, i.e, my_list, where clause applies the filter, i.e, l.Contains(“my”) and select clause provides the type of the returned items. And l is the range variable.
Step 4: Last step is to execute the query by using a foreach loop. For example:foreach(var q in res)
{
         Console.WriteLine(q);
}

foreach(var q in res)
{
         Console.WriteLine(q);
}

Example:
// Create first Query in C#using System;using System.Linq;using System.Collections.Generic;  class GFG {      // Main Method    static public void Main()    {          // Data source        List<string> my_list = new List<string>()         {                "This is my Dog",                "Name of my Dog is Robin",                "This is my Cat",                "Name of the cat is Mewmew"        };          // Creating LINQ Query        var res = from l in my_list                  where l.Contains("my")                  select l;          // Executing LINQ Query        foreach(var q in res)        {            Console.WriteLine(q);        }    }}
Output:
This is my Dog
Name of my Dog is Robin
This is my Cat

CSharp LINQ
C#
Writing code in comment?
Please use ide.geeksforgeeks.org,
generate link and share the link here.
C# Dictionary with examples
C# | Delegates
C# | Method Overriding
C# | Abstract Classes
Difference between Ref and Out keywords in C#
C# | Class and Object
Extension Method in C#
C# | Constructors
C# | String.IndexOf( ) Method | Set - 1
C# | Replace() Method