In this post, I am explaining what is Lambda Expression in C# and how to use it.
A lambda expression is an anonymous function that you can use to create delegates or expression tree types. All Lambda expressions use lambda operator =>.
Now lets take some example to understand more clearly how Lambda expressions are used
Example: Using Lambda Expression with List to find out if input name exists in List
A lambda expression is an anonymous function that you can use to create delegates or expression tree types. All Lambda expressions use lambda operator =>.
- The left hand side of operator specified input parameter (if any)
- Expression or statement is written on the right side of the operator
x => x*x;In the above Lambda expression, "x" on the left side is input parameter and on the right side is expression that returns the square value (x*x) of input "x".
Now lets take some example to understand more clearly how Lambda expressions are used
Example: Using Lambda Expression with List to find out if input name exists in List
List<string> listNames = new List<string>();
listNames.Add("sandeep");
listNames.Add("Abhay");
listNames.Add("Ritesh");
string result = listNames.Find(name => name.Equals("sandeep"));
Example: Using Lambda expression, with collection to find out employee details passing Employee IDusing System;
using System.Collections.Generic;
namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
EmpDetails empDetails = new EmpDetails();
clsEmployee empDetail = empDetails.FindEmpByID("EMP001");
if (empDetail == null)
Console.Write("Employee does not exist");
else
{
Console.Write("Emp ID : " + empDetail.EmpId);
Console.Write( "\nEmp Name : " + empDetail.EmpName);
Console.Write("\nEmp DOB : " + empDetail.DOB.ToString("dd/MM/yyyy"));
}
Console.ReadLine();
}
public class clsEmployee
{
public string EmpId { get; set; }
public string EmpName { get; set; }
public DateTime DOB { get; set; }
public DateTime DOJ { get; set; }
}
public class EmpDetails
{
//Creating object
List<clsEmployee> listEmpCollection = new List<clsEmployee>();
//Initializing Employee Details using constructor
public EmpDetails()
{
AddEmpDetails();
}
//Adding Employee details in the employees listEmpCollection
private void AddEmpDetails()
{
listEmpCollection.Add(new clsEmployee { EmpId = "EMP001", EmpName = "Sandeep", DOB = DateTime.Now.Date.AddYears(-28) });
listEmpCollection.Add(new clsEmployee { EmpId = "EMP002", EmpName = "Abhay", DOB = DateTime.Now.Date.AddYears(-26) });
listEmpCollection.Add(new clsEmployee { EmpId = "EMP003", EmpName = "Ritesh", DOB = DateTime.Now.Date.AddYears(-25) });
}
//Method to find the Employee details by pasing Emp Id using Lambda expression
public clsEmployee FindEmpByID(string EmpId)
{
return listEmpCollection.Find(m => m.EmpId == EmpId);
}
}
}
}
OUTPUT
No comments:
Write Comments