コード例 #1
0
        public ActionResult Edit(int id, FormCollection collection, string Upload)
        {
            var aEvent = _entities.Events.Single(a => a.ID == id);

            try
            {
                ImageController   ac          = new ImageController();
                List <UploadFile> uploadFiles = ac.GenerateAttachFileCollectionID(collection, "Event");

                if (Upload != null)
                {
                    ImageUploadToServer();

                    if (uploadFiles != null)
                    {
                        ModelStateSetting(uploadFiles, "Event");
                    }

                    UpdateModel(aEvent, "Event");
                    var viewModel = new EventViewModel()
                    {
                        Event      = aEvent,
                        Locations  = _entities.Locations.ToList(),
                        EventTypes = (from r in _entities.EventTypes where r.ID != 2 && r.ID != 3 select r).ToList(),
                    };
                    return(View(viewModel));
                }

                List <EventUploadFile> aEventUploadFiles = aEvent.EventUploadFiles.ToList();
                foreach (EventUploadFile aEventUploadFile in aEventUploadFiles)
                {
                    aEvent.EventUploadFiles.Remove(aEventUploadFile);
                }

                foreach (UploadFile uploadFile in uploadFiles)
                {
                    EventUploadFile auf = new EventUploadFile();
                    auf.UploadFileID = uploadFile.ID;
                    aEvent.EventUploadFiles.Add(auf);
                }

                UpdateModel(aEvent, "Event");
                _entities.SaveChanges();

                return(RedirectToAction("Index"));
            }
            catch
            {
                return(View());
            }
        }
コード例 #2
0
        public ActionResult Create(FormCollection collection, Event Event, string Upload)
        {
            MembershipUser mu = Membership.GetUser();

            try
            {
                ValidateEvent(Event);
                if (!ModelState.IsValid)
                {
                    throw new Exception();//ModelState["Event.StartDateTime"].Errors.Last().ErrorMessage);
                }

                ImageController ac = new ImageController();

                List <UploadFile> uploadFiles = ac.GenerateAttachFileCollectionID(collection, "Event");

                if (Upload != null)
                {
                    ImageUploadToServer();
                    if (uploadFiles != null)
                    {
                        ModelStateSetting(uploadFiles, "Event");
                    }
                    var viewModel = new EventViewModel()
                    {
                        Event      = Event,
                        Locations  = _entities.Locations.ToList(),
                        EventTypes = (from r in _entities.EventTypes where r.ID != 2 && r.ID != 3 select r).ToList(),
                    };
                    return(View(viewModel));
                }

                foreach (UploadFile uploadFile in uploadFiles)
                {
                    EventUploadFile auf = new EventUploadFile();
                    auf.UploadFileID = uploadFile.ID;
                    Event.EventUploadFiles.Add(auf);
                }

                Event.OrganizerNameID = (Guid)(mu.ProviderUserKey);

                //GenerateEventPrices(Event);

                _entities.AddToEvents(Event);
                _entities.SaveChanges();


                if (Event.EventTypeID == 1)
                {
                    Event             = (from r in _entities.Events select r).OrderByDescending(x => x.ID).First();
                    TempData["Event"] = Event;

                    return(RedirectToAction("ScheduleModelSelect", "EventSchedule"));
                }
                else
                {
                    EventScheduleController esc = new EventScheduleController();
                    esc.GenerateEventSchedules(Event);

                    return(RedirectToAction("Index"));
                }
            }
            catch
            {
                var viewModel = new EventViewModel()
                {
                    Event      = new Event(),
                    Locations  = _entities.Locations.ToList(),
                    EventTypes = (from r in _entities.EventTypes where r.ID != 2 && r.ID != 3 select r).ToList(),
                };
                //viewModel.LocalRetreatScheduleModelSelectLists = GetScheduleSelectLists();

                return(View(viewModel));
            }
        }