コード例 #1
0
        static void Main(string[] args)
        {
            var db = new SoftUniContext();

            var projectId = 2;

            using (db)
            {
                var empProject = db.EmployeesProjects
                                 .Where(p => p.ProjectId == projectId);

                foreach (var p in empProject)
                {
                    db.EmployeesProjects.Remove(p);
                }

                var project = db.Projects.Find(2);
                db.Remove(project);

                db.SaveChanges();

                var projectsResult = db.Projects
                                     .Take(10)
                                     .Select(p => p.Name);

                foreach (var p in projectsResult)
                {
                    Console.WriteLine(p);
                }
            }
        }
コード例 #2
0
        public static string DeleteProjectById(SoftUniContext context)
        {
            StringBuilder sb = new StringBuilder();

            const int ProjectToBeDeletedId = 2;

            Project projectToBeDeleted = context.Projects.Find(ProjectToBeDeletedId);

            List <EmployeeProject> employeeProjectsToBeDeleted = context
                                                                 .EmployeesProjects
                                                                 .Where(e => e.Project.ProjectId == ProjectToBeDeletedId)
                                                                 .ToList();

            context.EmployeesProjects.RemoveRange(employeeProjectsToBeDeleted);
            context.SaveChanges();

            context.Remove(projectToBeDeleted);
            context.SaveChanges();

            foreach (string projectName in context.Projects.Select(p => p.Name).Take(10))
            {
                Console.WriteLine(projectName);
            }

            return(sb.ToString());
        }
コード例 #3
0
        static void Main()
        {
            string townInput = Console.ReadLine();

            using (SoftUniContext context = new SoftUniContext())
            {
                var town = context.Towns.FirstOrDefault(t => t.Name == townInput);

                var addresses = context.Addresses.Where(a => a.TownId == town.TownId).ToArray();

                int deletedAddresses = addresses.Length;

                foreach (var a in addresses)
                {
                    var employees = context.Employees.Where(e => e.AddressId == a.AddressId);

                    foreach (var e in employees)
                    {
                        e.AddressId = null;
                    }
                }

                context.RemoveRange(addresses);
                context.Remove(town);
                context.SaveChanges();

                string address   = deletedAddresses == 1 ? "address" : "addresses";
                string wasOrWere = deletedAddresses == 1 ? "was" : "were";
                Console.WriteLine($"{deletedAddresses} {address} in {townInput} {wasOrWere} deleted");
            }
        }
コード例 #4
0
        public static string DeleteProjectById(SoftUniContext context)
        {
            StringBuilder output = new StringBuilder();

            var projectToDelete = context.Projects.First(p => p.ProjectId == 2);

            var employeeProjectsRecords = context.EmployeesProjects.Where(ep => ep.ProjectId == 2);

            context.RemoveRange(employeeProjectsRecords);

            context.SaveChanges();

            context.Remove(projectToDelete);

            context.SaveChanges();

            var projectsNames = context.Projects.Take(10).Select(p => p.Name).ToList();

            foreach (var projectName in projectsNames)
            {
                output.AppendLine(projectName);
            }

            return(output.ToString().TrimEnd());
        }
コード例 #5
0
        private static void RemoveTown(SoftUniContext context, int townId)
        {
            var town = context.Towns
                       .Find(townId);

            context.Remove(town);
        }
コード例 #6
0
        static void Main()
        {
            using (SoftUniContext context = new SoftUniContext())
            {
                string         townName  = Console.ReadLine();
                Town           town      = context.Towns.FirstOrDefault(t => t.Name == townName);
                List <Address> addresses = context.Addresses
                                           .Include(a => a.Employees)
                                           .Where(a => a.TownId == town.TownId)
                                           .ToList();

                addresses.ForEach(a =>
                {
                    a.Employees.ToList().ForEach(e => e.AddressId = null);
                    a.Employees.Clear();
                });

                context.RemoveRange(addresses);
                context.Remove(town);
                context.SaveChanges();

                Console.WriteLine("{0} address in {1} was deleted", addresses.Count(), townName);
                //ss
            }
        }
コード例 #7
0
        public static string RemoveTown(SoftUniContext context)
        {
            var sb = new StringBuilder();

            using (context)
            {
                var employees = context.Employees.Where(x => x.Address.Town.Name == "Snohomish");
                foreach (var employee in employees)
                {
                    employee.AddressId = null;
                }
                var town     = context.Towns.FirstOrDefault(x => x.Name == "Snohomish");
                var adresses = context.Addresses.Where(x => x.Town.Name == "Snohomish");

                int count = adresses.Count();

                context.Addresses.RemoveRange(adresses);
                context.Remove(town);

                context.SaveChanges();

                sb.AppendLine($"{count} addresses in Kent were deleted");
            }

            return(sb.ToString().TrimEnd());
        }
コード例 #8
0
        static void Main()
        {
            //var result = GetTownData();
            //
            //foreach (var item in result)
            //{
            //    Console.WriteLine(item);
            //}
            //using var db = new SoftUniContext();
            //
            //var result = db.Employees
            //    //.Select(e => new { Name = e.FirstName + " " + e.LastName, Department = e.Department.Name })
            //    .Select(e => new EmployeeResultModel { Name = e.FirstName + " " + e.LastName, Department = e.Department.Name })
            //    .Skip(5)
            //    .Take(10)
            //    .ToList();
            //
            //foreach (var item in result)
            //{
            //    Console.WriteLine($"{item.Name} {item.Department}");
            //}

            using var db = new SoftUniContext();

            //var town = new Town { Name = "New Town" };

            //town.Addresses.Add(new Addresses { AddressText = "Rio" });

            //db.Add(town);

            //var town = new Town { TownId = 33, Name = "Even Newer Town" };
            //
            //db.Update(town);

            //var town = db.Towns.Find(33);
            //
            //town.Name = "Old Town";

            //db.Towns.Remove(new Town { TownId = 33 });

            //var town = db.Towns.Find(33);

            var town = db.Towns
                       .Select(t => new { t.TownId, Addresses = t.Addresses.Select(a => a.AddressId) })
                       .FirstOrDefault(t => t.TownId == 33);

            foreach (var item in town.Addresses)
            {
                db.Addresses.Remove(new Addresses {
                    AddressId = item
                });
            }

            db.Remove(new Town {
                TownId = town.TownId
            });

            db.SaveChanges();
        }
コード例 #9
0
        static void Main()
        {
            using (SoftUniContext context = new SoftUniContext())
            {
                Project project = context.Projects.Find(2);
                IEnumerable <EmployeesProject> employeesProjects = context.EmployeesProjects.Where(ep => ep.ProjectId == 2);

                context.RemoveRange(employeesProjects);
                context.Remove(project);
                context.SaveChanges();

                context.Projects.Take(10).ToList().ForEach(p => Console.WriteLine(p.Name));
            }
        }
コード例 #10
0
        public static void Main(string[] args)
        {
            using (var db = new SoftUniContext())
            {
                var projectToBeDeleted = db.Projects.FirstOrDefault(p => p.ProjectId == 2);

                db.RemoveRange(db.EmployeesProjects
                               .Where(ep => ep.ProjectId == 2));
                db.Remove(projectToBeDeleted);
                db.SaveChanges();

                db.Projects
                .Select(p => p.Name)
                .Take(10)
                .ToList()
                .ForEach(p => FileWriter.WriteLine($"{p}"));
            }
        }
コード例 #11
0
        static void Main(string[] args)
        {
            using (SoftUniContext db = new SoftUniContext())
            {
                var projectToDelete = db.Projects.FirstOrDefault(p => p.ProjectId == 2);

                db.RemoveRange(db.EmployeesProjects
                               .Where(ep => ep.ProjectId == 2));
                db.Remove(projectToDelete);
                db.SaveChanges();

                using (StreamWriter Writer = new StreamWriter(@"..\..\..\result.txt"))
                {
                    foreach (var project in db.Projects.Take(10))
                    {
                        Writer.WriteLine($"{project.Name}");
                    }
                }
            }
        }
コード例 #12
0
        public static void Main()
        {
            SoftUniContext db = new SoftUniContext();

            using (db)
            {
                const int ProjectToBeDeletedId = 2;

                Project projectToBeDeleted = db.Projects.Find(ProjectToBeDeletedId);
                List <EmployeeProject> employeeProjectsToBeDeleted = db.EmployeesProjects.Where(ep => ep.Project.ProjectId == ProjectToBeDeletedId).ToList();

                db.EmployeesProjects.RemoveRange(employeeProjectsToBeDeleted);
                db.SaveChanges();

                db.Remove(projectToBeDeleted);
                db.SaveChanges();

                foreach (string projectName in db.Projects.Select(p => p.Name).Take(10))
                {
                    Console.WriteLine(projectName);
                }
            }
        }