public ActionResult AddProject(int? id) { ProjectViewModel pro = new ProjectViewModel(); if (id != null) { using (ApplicationDbContext db = new ApplicationDbContext()) { pro = db.Projects.Where(p => p.ProjectId == id) .Select(x => new ProjectViewModel { ID = x.ProjectId, Name = x.Name, IsBaseLine = x.IsBaseLine, StartDate = x.StartDate, FinishDate = x.FinishDate, Notes = x.Notes }).FirstOrDefault(); } } return View(pro); }
public int AddProject(ProjectViewModel project, string userId) { Project p = new Project(); using (ApplicationDbContext db = new ApplicationDbContext()) { if (project.ID == null) { p = new Project() { Name = project.Name, IsBaseLine = project.IsBaseLine, Notes = project.Notes, StartDate = project.StartDate, FinishDate = project.FinishDate, DateUpdated = DateTime.Now, UserId = userId }; db.Projects.Add(p); } else { p = db.Projects.Where(x => x.ProjectId == project.ID && x.UserId == userId).FirstOrDefault(); if (p != null) { p.Name = project.Name; p.IsBaseLine = project.IsBaseLine; p.Notes = project.Notes; p.StartDate = project.StartDate; p.FinishDate = project.FinishDate; p.DateUpdated = DateTime.Now; } } db.SaveChanges(); db.Entry(p).GetDatabaseValues(); } return p.ProjectId; }
public ActionResult AddProject(ProjectViewModel project) { int projectId = 0; try { if (!ModelState.IsValid) { foreach (ModelState modelState in ViewData.ModelState.Values) { foreach (ModelError error in modelState.Errors) { TempData["Model Error"] += "<p style='color:lightblue;'>" + modelState.Value + ": " + error.ErrorMessage + "</p>"; } } return View(); } projectId = _adapter.AddProject(project, UserId); } catch (DbEntityValidationException dbEx) { foreach (var validationErrors in dbEx.EntityValidationErrors) { foreach (var validationError in validationErrors.ValidationErrors) { TempData["Exception"] += string.Format("Property: {0} Error: {1}", validationError.PropertyName, validationError.ErrorMessage); } } return RedirectToAction("Index"); } return RedirectToAction("ProjectDetails", new { id = projectId }); }