public ActionResult Edit(Project project)
 {
     if (ModelState.IsValid && project.Id.HasValue)
     {
         new mongo().SaveItem<Project>(project);
         return RedirectToAction("Index");
     }
     return View(project);
 }
        public ActionResult Create(Project project)
        {
            if (ModelState.IsValid)
            {
                new mongo().SaveItem<Project>(project);
                return RedirectToAction("Index");
            }

            return View(project);
        }
Пример #3
0
        public ActionResult Add([Bind(Include = "ID,Title,Description,IsVisible,MediaID,ProjectHasMediaID")] ProjectViewModel projectView)
        {
            if (!ModelState.IsValid)
            {
                if(projectView.MediaID != null)
                    projectView.Media = db.Media.Find(projectView.MediaID);

                if(projectView.ProjectHasMediaID != null)
                {
                    List<int?> projectMediaID = new List<int?>();
                    List<ProjectHasMedia> projectMediaList = new List<ProjectHasMedia>();
                    foreach (int? projectMedia in projectView.ProjectHasMediaID)
                    {
                        projectMediaID.Add(projectMedia);
                        projectMediaList.Add(db.ProjectHasMedia.Where(p => p.MediaID == projectMedia).FirstOrDefault());
                    }

                    projectView.ProjectHasMediaID = projectMediaID.ToArray();
                    projectView.ProjectHasMedia = projectMediaList;
                }

                return View(projectView);
            }

            Project project = new Project();
            MapViewModel(project, projectView);
            project.CreatedAt = TimeStamp.Now();
            db.Projects.Add(project);
            db.SaveChanges();

            if(projectView.ProjectHasMediaID != null)
            {
                foreach(int projectMedia in projectView.ProjectHasMediaID)
                {
                    var projectHasMedia = new ProjectHasMediaController().Update(projectMedia, project.ID);
                }
            }
            return RedirectToAction("Index");
        }
Пример #4
0
 private void MapViewModel(Project project, ProjectViewModel projectView)
 {
     project.ID = projectView.ID;
     project.Title = projectView.Title;
     project.Description = projectView.Description;
     project.MediaID = projectView.MediaID;
     project.IsVisible = projectView.IsVisible;
     project.UpdatedAt = TimeStamp.Now();
     project.Media = projectView.Media;
     project.Skills = projectView.Skills;
     project.ProjectHasMedia = projectView.ProjectHasMedia;
 }
Пример #5
0
        public ActionResult Edit([Bind(Include = "ID,Title,Description,IsVisible,MediaID,ProjectHasMediaID")] ProjectViewModel projectView)
        {
            if (!ModelState.IsValid)
            {
                projectView.Media = db.Media.Find(projectView.MediaID);
                projectView.ProjectHasMedia = db.ProjectHasMedia.Where(p => p.ProjectID == projectView.ID).ToList();
                return View(projectView);
            }

            Project project = new Project();
            MapViewModel(project, projectView);
            string excluded = "CreatedAt";
            db.Entry(project).State = EntityState.Modified;
            project.UpdatedAt = TimeStamp.Now();
            db.Entry(project).Property(excluded).IsModified = false;
            db.SaveChanges();
            return RedirectToAction("Index");
        }