public IActionResult DeleteConfirmed(Guid Id) { var company = _logic.Get(Id); if (company is null) { return(BadRequest()); } var compdescs = new CompanyDescriptionLogic(new EFGenericRepository <CompanyDescriptionPoco>()).GetList(c => c.Company == company.Id); if (compdescs.Count > 0) { new CompanyDescriptionLogic(new EFGenericRepository <CompanyDescriptionPoco>()).Delete(compdescs.ToArray()); } var compLocs = new CompanyLocationLogic(new EFGenericRepository <CompanyLocationPoco>()).GetList(c => c.Company == company.Id); if (compLocs.Count > 0) { new CompanyLocationLogic(new EFGenericRepository <CompanyLocationPoco>()).Delete(compLocs.ToArray()); } var compJobs = new CompanyJobLogic(new EFGenericRepository <CompanyJobPoco>()).GetList(c => c.Company == company.Id); if (compJobs.Count > 0) { List <CompanyJobSkillPoco> skill = new List <CompanyJobSkillPoco>(); List <CompanyJobEducationPoco> educs = new List <CompanyJobEducationPoco>(); List <CompanyJobDescriptionPoco> jds = new List <CompanyJobDescriptionPoco>(); List <ApplicantJobApplicationPoco> ajas = new List <ApplicantJobApplicationPoco>(); compJobs.ForEach(j => { var jobskills = new EFGenericRepository <CompanyJobSkillPoco>().GetList(c => c.Job == j.Id).ToList(); skill.AddRange(jobskills.ToList()); var jobedu = new EFGenericRepository <CompanyJobEducationPoco>().GetList(c => c.Job == j.Id).ToList(); educs.AddRange(jobedu.ToList()); //= compJobs.ForEach(p=>p.Id == c.Job) }c.Job == compJobs.First().Id).ToArray()); var jobdesc = new EFGenericRepository <CompanyJobDescriptionPoco>().GetList(c => c.Job == j.Id).ToList(); jds.AddRange(jobdesc.ToList()); var appjobapp = new EFGenericRepository <ApplicantJobApplicationPoco>().GetList(c => c.Job == j.Id).ToList(); ajas.AddRange(appjobapp.ToList()); }); if (skill.Count > 0) { new CompanyJobSkillLogic(new EFGenericRepository <CompanyJobSkillPoco>()).Delete(skill.ToArray()); } if (educs.Count > 0) { new CompanyJobEducationLogic(new EFGenericRepository <CompanyJobEducationPoco>()).Delete(educs.ToArray()); } if (jds.Count > 0) { new CompanyJobDescriptionLogic(new EFGenericRepository <CompanyJobDescriptionPoco>()).Delete(jds.ToArray()); } if (ajas.Count > 0) { new ApplicantJobApplicationLogic(new EFGenericRepository <ApplicantJobApplicationPoco>()).Delete(ajas.ToArray()); } new CompanyJobLogic(new EFGenericRepository <CompanyJobPoco>()).Delete(compJobs.ToArray()); } _logic.Delete(new CompanyProfilePoco[] { company }); return(RedirectToAction(nameof(Index))); }