Following tutorial from Gavin Lon
Link: https://www.youtube.com/playlist?list=PL4LFuHwItvKbzDl6MBp3XY0MrnALSfyub
TCPDataTCPExtensionThePretendCommpanyApplication
- Class extension and Lambda expression
- IEnumerable and IQueryable
- Create class extension filter and try it to filter list of
EmployeeandDepartment - Use already defined extension in
Linq,Where - sql-like query syntax provided by
Linq, but some query still need to use extension method provided byLinq
LINQExamples_1
- Method Syntax and Query Syntax
Selectmethod syntaxvar results = employeeList.Select(e => new { FullName = e.FirstName + " " + e.LastName, AnnualSalary = e.AnnualSalary }); // with chaining var results = employeeList.Select(e => new { FullName = e.FirstName + " " + e.LastName, AnnualSalary = e.AnnualSalary }).Where(e => e.AnnualSalary >= 50000);SelectQuery Syntaxvar results = from emp in employeeList select new { FullName = emp.FirstName + " " + emp.LastName, AnnualSalary = emp.AnnualSalary }; // with where clause var results = from emp in employeeList where emp.AnnualSalary >=50000 select new { FullName = emp.FirstName + " " + emp.LastName, AnnualSalary = emp.AnnualSalary };- Deffered and Immediate Execution
Immediate execution with "To conversion method" INNER JOINusing operatorJOINMethod Syntaxvar results = departmentList.Join(employeeList, department => department.Id, employee => employee.DepartmentId, (department, Employee) => new { FullName = Employee.FirstName + " " + Employee.LastName, AnnualSalary = Employee.AnnualSalary, departmentName = department.Longname });INNER JOINusing query syntaxvar results = from dept in departmentList join emp in employeeList on dept.Id equals emp.DepartmentId select new { FullName = emp.FirstName + " " + emp.LastName, AnnualSalary = emp.AnnualSalary, departmentName = dept.Longname };LEFT OUTER JOINusingGroupJoinoperatorvar results = departmentList.GroupJoin(employeeList, dep => dep.Id, emp => emp.DepartmentId, (dept, employeesGroup) => new { Employees = employeesGroup, DepartmentName = dept.Longname });LEFT OUTER JOINusingintokeyword andjoinvar results = from dept in departmentList join emp in employeeList on dept.Id equals emp.DepartmentId into employeeGroup select new { Employees = employeeGroup, DepartmentName = dept.Longname };