Exemple #1
0
        //GET: Advertisement/Edit
        public ActionResult Edit(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }

            using (var database = new ApplicationDbContext())
            {
                var advertisement = database.Advertisements.FirstOrDefault(a => a.Id == id);

                if (advertisement == null)
                {
                    return(HttpNotFound());
                }

                if (!IsAuthorizedToEdit(advertisement))
                {
                    return(new HttpStatusCodeResult(HttpStatusCode.Forbidden));
                }

                var model = new AdvertisementEditViewModel();
                model.Description = advertisement.Description;
                model.Price       = advertisement.Price;
                model.Title       = advertisement.Title;
                model.ImageUrl    = advertisement.ImageUrl;
                model.IsSold      = advertisement.IsSold;
                model.CategoryId  = advertisement.CategoryId;
                model.Categories  = database.Categories.OrderBy(c => c.Name).ToList();
                ViewBag.Id        = advertisement.Id;

                return(View(model));
            }
        }
Exemple #2
0
        public ActionResult Edit(int?id, AdvertisementEditViewModel model)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            if (ModelState.IsValid)
            {
                using (var database = new ApplicationDbContext())
                {
                    var advertisement = database.Advertisements.FirstOrDefault(a => a.Id == id);

                    if (advertisement == null)
                    {
                        return(HttpNotFound());
                    }

                    if (!IsAuthorizedToEdit(advertisement))
                    {
                        return(new HttpStatusCodeResult(HttpStatusCode.Forbidden));
                    }

                    advertisement.Title       = model.Title;
                    advertisement.Description = model.Description;
                    advertisement.Price       = model.Price;
                    advertisement.IsSold      = model.IsSold;
                    advertisement.CategoryId  = model.CategoryId;
                    if (model.ImageUpload != null)
                    {
                        this.SetImage(advertisement, model.ImageUpload);
                    }

                    database.Entry(advertisement).State = EntityState.Modified;
                    database.SaveChanges();

                    return(RedirectToAction("Details", "Advertisement", new { @id = advertisement.Id }));
                }
            }
            using (var database = new ApplicationDbContext())
            {
                var advertisement = database.Advertisements.FirstOrDefault(a => a.Id == id);
                model.Categories = model.Categories = database.Categories.OrderBy(c => c.Name).ToList();
                model.ImageUrl   = advertisement.ImageUrl;
                ViewBag.id       = advertisement.Id;
                return(View(model));
            }
        }