DataConnector | ComponentOne
ADO.NET provider for Magento / LINQ queries
In This Topic
    LINQ queries
    In This Topic

    LINQ queries demonstrate how to operate and query the Magento objects wrapped in an Entity Framework data model. Below are some examples of LINQ queries supported by the Entity framework.

    Select and Filter

    Retrieve records from the Products table where the Product Name is "Vintage Backpack".

    C#
    Copy Code
    var records = from p in context.Products
                where p.Code== "Vintage Backpack"
                select new { p.Id, p.Name, p.Price};
    Contains

    Retrieve records from the CustomerGroups table where the Code property contains the substring "Retailer".

    C#
    Copy Code
    var records = context.CustomerGroups.Where(x => x.Code.Contains("Retailer")); 
    Limit

    Retrieve the first 10 records from the Products table.

    C#
    Copy Code
    var records = (from p in context.Products
                select p).Take(10); //taking 10 records
    Order by

    Retrieve all records from the CustomerGroups table and sort them in descending order based on the Code property.

    C#
    Copy Code
    var records = (from p in context.CustomerGroups
                orderby p.Code descending//Implementing Order By
                select p);
    Count

    Count all entities that match a given criterion.

    C#
    Copy Code
    var _count = (from p in context.Products 
                select p).Count();//Count Query based on the number of records selected
    Group By

    Group records from the Products table based on the Price property. The groups are then ordered in descending order based on the Price.

    C#
    Copy Code
    var sampleTable = context.Products.AsEnumerable();
    var queryCreatedBy = from b in sampleTable
                        group b by b.Price  into newGroup //Linq Group Query based on Price 
                        orderby newGroup.Key descending
                        select newGroup;
    Joins

    Cross-join between the Products and CustomerGroups tables.

    C#
    Copy Code
    var records = from b in context.Products 
                from e in context.CustomerGroups
                select new { b, e };//Defining Cross Join