예제 #1
0
        public ActionResult Add(Activities activities)
        {
            try
            {
                var activity = new Activities()
                {
                    ParentActivityID    = activities.ParentActivityID,
                    ActivityDescription = activities.ActivityDescription,
                    StartDateTime       = activities.StartDateTime,
                    EndDateTime         = activities.EndDateTime
                };

                using (var activitiesDb = new ActivitiesDbCtxt())
                {
                    var parentActivity = activitiesDb.Activities.Find(activity.ParentActivityID);
                    if (parentActivity == null && activities.ActivityID != 0)
                    {
                        return(RedirectToAction("Index"));
                    }
                    activitiesDb.Activities.Add(activity);
                    activitiesDb.SaveChanges();
                }
                return(RedirectToAction("Index"));
            }
            catch (Exception ex)
            {
                ModelState.AddModelError("ParentActivityId", ex.Message);
                return(View("Add", activities));
            }
        }
예제 #2
0
 public ActionResult DeleteSelected(IEnumerable <int> ids)
 {
     using (var activitiesDb = new ActivitiesDbCtxt())
     {
         foreach (var activity in ids.Select(id => activitiesDb.Activities.Find(id)).Where(activity => activity != null))
         {
             activitiesDb.Activities.Remove(activity);
             activitiesDb.SaveChanges();
         }
     }
     return(RedirectToAction("Index"));
 }
예제 #3
0
        public ActionResult Edit(EditViewModel editViewModel)
        {
            if (ModelState.IsValid)
            {
                using (var activitiesDb = new ActivitiesDbCtxt())
                {
                    var activity = editViewModel.Activity;
                    activity.ParentActivityID          = editViewModel.SelectedParentActivityId;
                    activitiesDb.Entry(activity).State = EntityState.Modified;;
                    activitiesDb.SaveChanges();
                }
            }

            return(RedirectToAction("Index"));
        }
예제 #4
0
        public ActionResult Delete()
        {
            var activityId = int.Parse(RouteData.Values["id"].ToString());

            using (var activitiesDb = new ActivitiesDbCtxt())
            {
                var activity = activitiesDb.Activities.Find(activityId);

                if (activity == null)
                {
                    return(HttpNotFound());
                }
                activitiesDb.Activities.Remove(activity);
                activitiesDb.SaveChanges();
            }
            return(RedirectToAction("Index"));
        }