Search

Thursday, April 10, 2014
0 comments

How to use LINQ Join operator in ASP.NET

7:27 AMThursday, April 10, 2014

Introduction

The Join operators in LINQ are used to join objects in one data source with objects that share a common attribute in another data source. The Join operators provided in LINQ are Join and GroupJoin. The Join clause implements an inner join, which is the type of join in which only those objects that have a match in other data set are returned. The GroupJoin clause joins two sequence based on a key selector functions and groups the results. The syntax of using the Join operator is:

Syntax in C#

public static IEnumerable<V> Join<T, U, K, V>( this IEnumerable<T> outer, IEnumerable<U> inner, Function<T, K> outerKeySeIector, Function<U, K> innerKeySelector, Function<T, U, V> resultSelector);

Lets take an simple example

<div>
        <asp:ListBox ID="ListBox1" runat="server" Height="151px" Width="134px"></asp:ListBox>
        <br />
        <br />
        <asp:Button ID="Button1" runat="server" Text="Join Operator example" 
            onclick="Button1_Click" />
    </div>
Code behind Code

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

public partial class Default9 : System.Web.UI.Page
{
    public class Customer
    {
        public int key;
        public string Name;
    }
    public class order
    {
        public int key;
        public string OrderNumber;


    }
    protected void Page_Load(object sender, EventArgs e)
    {

    }
    protected void Button1_Click(object sender, EventArgs e)
    {
        var customers = new List<Customer>()
        {
new Customer {key =1,Name ="jacob"},
new Customer {key=2,Name ="smith"}
        };
        var orders = new List<order>()
        {
            new order {key=1,OrderNumber ="Number 1"},
            new order {key =2,OrderNumber ="Number 2"}

        };

        var q = from c in customers
                join o in orders on c.key equals o.key
                select new { c.Name, o.OrderNumber };
        foreach (var item in q)
        {
            ListBox1.Items.Add(item.OrderNumber.ToString() + " " + item.Name);
        }
    }
}
Code generate the following output
How to use LINQ Join operator in ASP.NET
Protected by Copyscape Online Copyright Protection Software

0 comments :

Post a Comment

 
Toggle Footer
Top