public ActionResult CreateProjectFromTempProject(int projectId) { _db = new ApplicationDbContext(); var tempProject = (from x in _db.TempProjects where x.TempProjectId == projectId select x).FirstOrDefault(); Project project = Mapper.Map <TempProject, Project>(tempProject); if (tempProject != null) { _db.Projects.Add(project); } _db.SaveChanges(); BlobConnector.MoveIconFromTempToProject(projectId, project.ProjectId); ApplicationDbContext db2 = new ApplicationDbContext(); var tempProjectTechnologies = from x in db2.TempProjectTechnologies where x.ProjectId == projectId select x; foreach (var tempProjectTechnology in tempProjectTechnologies) { ProjectTechnology projectTechnology = Mapper.Map <TempProjectTechnology, ProjectTechnology>(tempProjectTechnology); if (projectTechnology == null) { continue; } projectTechnology.ProjectId = project.ProjectId; db2.ProjectTechnologies.Add(projectTechnology); } db2.SaveChanges(); var imgList = from z in _db.Images where z.ProjectId == projectId && z.TempraryProject select z; foreach (var v in imgList) { BlobConnector.MoveImageFromTempToProject(v, project.ProjectId); v.FileName = "Project" + project.ProjectId + v.OriginalFileName; v.TempraryProject = false; v.ProjectId = project.ProjectId; _db.Entry(v).State = System.Data.Entity.EntityState.Modified; } _db.SaveChanges(); RemoveTempProject(projectId); return(RedirectToAction("ProjectsListView")); }