private static void RemoveTowns(SoftuniContext context) { var townName = Console.ReadLine(); var town = context.Towns.FirstOrDefault(t => t.Name == townName); if (town == null) { Console.WriteLine("There isn't a town with that name in database"); } else { var addressIds = context.Addresses .Where(a => a.TownID == town.TownID).ToList().Select(a => a.AddressID).ToList(); var employeeWithAdress = context.Employees .Where(e => addressIds.Contains((int)e.AddressID)).ToList(); foreach (var emp in employeeWithAdress) { emp.AddressID = null; } foreach (var addressId in addressIds) { context.Addresses.Remove(context.Addresses.FirstOrDefault(a => a.AddressID == addressId)); } Console.WriteLine($"{addressIds.Count} addresses in {townName} were deleted"); context.Towns.Remove(town); context.SaveChanges(); } }
private static void DeleteProjectById(SoftuniContext context) { var project = context.Projects.FirstOrDefault(p => p.ProjectID == 2); if (project != null) { var projectEmployees = project.Employees; foreach (var emp in projectEmployees) { emp.Projects.Remove(project); } context.Projects.Remove(project); context.SaveChanges(); } var projectsName = context.Projects .Select(p => p.Name).Take(10).ToList(); foreach (var name in projectsName) { Console.WriteLine(name); } }
private static void AddAddressToEmployee(SoftuniContext context) { Address address = new Address(); address.AddressText = "Vitoshka 15"; address.TownID = 4; context.Addresses.Add(address); var employees = context.Employees .Where(e => e.LastName == "Nakov"); foreach (var employee in employees) { employee.Addresses = address; } context.SaveChanges(); var emplAdresses = context.Employees .OrderByDescending(e => e.AddressID) .Take(10) .Select(e => e.Addresses.AddressText) .ToList(); foreach (var adress in emplAdresses) { Console.WriteLine(adress); } }
private static void AddingNewAddress(SoftuniContext context) { Address addr = new Address() { AddressText = "Vitoshka 15", TownID = 4 }; Employee employee = null; employee = context.Employees .Where(e => e.LastName == "Nakov") .FirstOrDefault(); employee.Address = addr; context.SaveChanges(); List <string> employeesAddr = context.Employees .OrderByDescending(e => e.AddressID) .Take(10) .Select(e => e.Address.AddressText) .ToList(); foreach (string ea in employeesAddr) { Console.WriteLine(ea); } }
private static void IncreaseSalaries(SoftuniContext context) { var employees = context.Employees .Where(e => e.Department.Name == "Engineering" || e.Department.Name == "Tool Design" || e.Department.Name == "Marketing" || e.Department.Name == "Information Services"); foreach (var emp in employees) { emp.Salary *= 1.12m; } context.SaveChanges(); foreach (var e in employees) { Console.WriteLine($"{e.FirstName} {e.LastName} (${e.Salary:f6})"); } }
private static void DeleteProjectById(SoftuniContext context) { var project = context.Projects.Find(2); foreach (Employee e in project.Employees) { e.Projects.Remove(project); } context.Projects.Remove(project); context.SaveChanges(); List <Project> projects = context.Projects .Take(10) .ToList(); foreach (Project p in projects) { Console.WriteLine(p.Name); } }
private static void RemoveTowns(SoftuniContext context) { Console.Write("Enter town to delete: "); string town = Console.ReadLine(); Town tn = context.Towns .Where(t => t.Name == town) .FirstOrDefault(); List <Address> addrs = context.Addresses .Where(a => a.Town.Name == town) .ToList(); context.Towns.Remove(tn); foreach (Address a in addrs) { List <Employee> empls = context.Employees .Where(e => e.AddressID == a.AddressID) .ToList(); foreach (Employee e in empls) { e.AddressID = null; } context.Addresses.Remove(a); } context.SaveChanges(); if (addrs.Count == 1) { Console.WriteLine($"{addrs.Count} " + $"address in {town} was deleted"); } else { Console.WriteLine($"{addrs.Count} " + $"addresses in {town} were deleted"); } }
private static void IncreaseSalaries(SoftuniContext context) { List <Employee> employees = context.Employees .Where(e => e.Department.Name == "Engineering" || e.Department.Name == "Tool Design" || e.Department.Name == "Marketing" || e.Department.Name == "Information Services") .ToList(); foreach (Employee e in employees) { e.Salary = e.Salary + e.Salary * 12 / 100; } context.SaveChanges(); foreach (Employee e in employees) { Console.WriteLine($"{e.FirstName} " + $"{e.LastName} (${e.Salary:f6})"); } }