Perform Self-Join using Lambda Operator

Introduction

In this blog we will see how to perform self-join using lambda operator.

Step 1: Create asp.net web application

SQL Script

  1. SELECT p.FirstName, q.ManagerName   
  2. FROM Employee p  
  3. INNER JOIN Employee q  
  4. ON p.ManagerID = q.EmpID  

Webform1.aspx

  1. <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="WebForm1.aspx.cs" Inherits="Self_Join_Using_Lambda.WebForm1" %>  
  2.   
  3. <!DOCTYPE html>  
  4.   
  5. <html xmlns="http://www.w3.org/1999/xhtml">  
  6. <head runat="server">  
  7.     <title></title>  
  8. </head>  
  9. <body>  
  10.     <form id="form1" runat="server">  
  11.     <div>  
  12.         <asp:GridView ID="GridView1" runat="server"></asp:GridView>  
  13.     </div>  
  14.     </form>  
  15. </body>  
  16. </html>  

Webform1.aspx.cs

  1. using System;  
  2. using System.Collections.Generic;  
  3. using System.Linq;  
  4. using System.Web;  
  5. using System.Web.UI;  
  6. using System.Web.UI.WebControls;  
  7.   
  8. namespace Self_Join_Using_Lambda  
  9. {  
  10.     public partial class WebForm1 : System.Web.UI.Page  
  11.     {  
  12.         EmployeeDBEntities objEntities = new EmployeeDBEntities();  
  13.         protected void Page_Load(object sender, EventArgs e)  
  14.         {  
  15.             //Self Join Using Lambda  
  16.             var query = objEntities.Employees.Join(objEntities.Employees, p => p.ManagerId, q => q.EmpId, (p, q) => new { p.FirstName, q.ManagerName });  
  17.             GridView1.DataSource = query.ToList();  
  18.             GridView1.DataBind();  
  19.         }  
  20.     }  
  21. }  

Output of the application looks like this

Summary

In this blog we have seen how we can perform self-join using lambda operator. Happy coding!

Ebook Download
View all
Learn
View all
MVC Corporation is consulting and IT services based company.