Venciity

EF - SomeEFActionsClass

Mar 7th, 2015
277
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 2.74 KB | None | 0 0
  1. using System;
  2. using System.Linq;
  3.  
  4. namespace SomeEFActionsClass
  5. {
  6.     class SomeEFActionsClass
  7.     {
  8.         static void Main(string[] args)
  9.         {
  10.             // Problem 3.   Employees with Projects after 2002
  11.             Console.WriteLine("----- Problem 3. Employees with Projects after 2002 -----");
  12.             var softUniEntities = new SoftUniEntities();
  13.             var employeesWithProjectsAfter2012 = (softUniEntities.Employees
  14.                 .Where(
  15.                     e =>
  16.                     DateTime.Compare(e.HireDate, new DateTime(2002, 1, 1)) > 0
  17.                 )).ToList();
  18.  
  19.             int employeesCount = 1;
  20.  
  21.             foreach (var employee in employeesWithProjectsAfter2012)
  22.             {
  23.                 Console.WriteLine(employeesCount + " " + employee.FirstName + " " + employee.LastName +
  24.                     ", HireDate: " + employee.HireDate);
  25.                 employeesCount++;
  26.             }
  27.  
  28.             // Problem 4.   Native SQL Query
  29.             Console.WriteLine("----- Problem 4. previous task by using native SQL query  -----");
  30.             var context = new SoftUniEntities();
  31.             string nativeSQLQuery =
  32.                 "SELECT FirstName + ' ' + LastName + ' ' + CONVERT(VARCHAR(24), HireDate, 113) " +
  33.                 "FROM dbo.Employees WHERE HireDate > {0}";
  34.             var employees = context.Database.SqlQuery<string>(nativeSQLQuery, "01-jan-2002");
  35.             int employeesCount2 = 1;
  36.  
  37.             foreach (var emp in employees)
  38.             {
  39.                 Console.WriteLine(employeesCount2 + " " + emp);
  40.                 employeesCount2++;
  41.             }
  42.  
  43.             // Problem 5.   Employees by Department and Manager [Example Usage]
  44.             var employeesByDepartmentAndManager = EmployeesByDepartmentAndManager("Production", "Jo Brown");
  45.             Console.WriteLine("----- 05. Employees by Department and Manager -----");
  46.             foreach (var emp in employeesByDepartmentAndManager)
  47.             {
  48.                 Console.WriteLine(emp.FirstName + " " + emp.LastName);
  49.             }
  50.         }
  51.  
  52.         // Problem 5.   Employees by Department and Manager
  53.         public static IQueryable<Employee> EmployeesByDepartmentAndManager(string departmentName, string managerFullName)
  54.         {
  55.             var softUniEntities = new SoftUniEntities();
  56.             //IQueryable<Employee> employyes = softUniEntities.Employees
  57.             //    .Where((e => e.Department == departmentName)
  58.             IQueryable<Employee> employees = softUniEntities.Employees
  59.                             .Where(e => e.Department.Name == departmentName &&
  60.                             e.Employee1.FirstName + " " + e.Employee1.LastName == managerFullName);
  61.  
  62.             return employees;
  63.         }
  64.     }
  65. }
Advertisement
Add Comment
Please, Sign In to add comment