public ActionResult Edit(MyEventViewModel item) { using (var db = new ApplicationDbContext()) { var myEvent = db.Events.Find(item.MyEvent.Id); if (myEvent != null) { db.Events.AddOrUpdate(Mapper.Map <MyEvent>(item.MyEvent)); var tt = db.PropertiesEvent.Where(x => x.IdEvent == myEvent.Id).ToList(); db.PropertiesEvent.RemoveRange(tt); db.SaveChanges(); if (item.Key != null && item.Value != null) { for (int i = 0; i < item.Key.Count; i++) { db.PropertiesEvent.Add(new MyEventProperty { IdEvent = myEvent.Id, Key = item.Key[i], Value = item.Value[i] }); } } db.SaveChanges(); } return(RedirectToAction("Index")); } }
public ActionResult Create(MyEventViewModel item) { using (var db = new ApplicationDbContext()) { db.Events.Add(Mapper.Map <MyEvent>(item.MyEvent)); db.SaveChanges(); var idEvent = db.Events.ToList().Last().Id; return(RedirectToAction("Edit", new { id = idEvent })); } }
//Index action method public ViewResult Index() { //call GetMyEventItems() in MyEvent class. This method checks if you already have the //Events and if not return the from the database var list = _myEvent.GetMyEventLists(); _myEvent.MyEventLists = list; //create a new MyEventViewModel that will be returned to the view var myEventViewModel = new MyEventViewModel { MyEvent = _myEvent }; return(View(myEventViewModel)); }
//Invoke method means code in here will be called automatically public IViewComponentResult Invoke() { //Call GetMyEventItems to make sure items have been loaded from the database var items = _myEvent.GetMyEventLists(); //create 2 mock items and add them to the eventsList //var items = new List<MyEventItem>() { new MyEventItem(), new MyEventItem() }; _myEvent.MyEventLists = items; //Create a shoppingCartViewModel pass in the shoppingcart and the total var myEventViewModel = new MyEventViewModel { MyEvent = _myEvent, //MyEventTotal = _myEvent.GetMyEventTotal() }; //return a view that passes myEventViewModel to that view return(View(myEventViewModel)); }
public ActionResult Edit(int id) { using (var db = new ApplicationDbContext()) { var myEvent = db.Events.Find(id); if (myEvent == null) { return(RedirectToAction("Index")); } else { var EventProperties = db.PropertiesEvent.Where(x => x.IdEvent == myEvent.Id).ToList(); var model = new MyEventViewModel() { MyEvent = Mapper.Map <EventViewModel>(myEvent), MyEventsProperties = EventProperties }; return(View(model)); } } }