コード例 #1
0
        public ActionResult Create(ImageCreateViewModel model)
        {
            string bitMapName = String.Empty;
            if (Request.Files.Count > 0 && Request.Files[0].ContentLength > 0)
            {
                var fileName = this.Request.Files[0].FileName;
                var extension = Path.GetExtension(fileName);
                model.Image.FileName = String.Format("{0}{1}", Guid.NewGuid(), extension);
                bitMapName = String.Format("bitmap-{0}", model.Image.FileName);
                //delete the old file
                if(!model.Image.IsNew())
                {
                    var oldImage = _service.GetImages().Single(i => i.Id == model.Image.Id).FileName;
                    var oldImagePath = this.Server.MapPath(String.Format("~/user_images/{0}", oldImage));
                    var oldBitMap = this.Server.MapPath(String.Format("~/user_images/bitmap-{0}", oldImage));
                    if (System.IO.File.Exists(oldImagePath))
                        System.IO.File.Delete(oldImagePath);
                    if (System.IO.File.Exists(oldBitMap))
                        System.IO.File.Delete(oldBitMap);
                }
                var saveTo = this.Server.MapPath(String.Format("~/user_images/{0}", model.Image.FileName));
                var saveToBitMap = this.Server.MapPath(String.Format("~/user_images/{0}", bitMapName));
                this.Request.Files[0].SaveAs(saveTo);
                ResizeImage(saveTo, 500, 500);
                System.IO.File.Copy(saveTo, saveToBitMap);
                ResizeImage(saveToBitMap, 50, 50);
            }

            _service.SaveImage(model.Image);

            TempData["message"] = "Image Saved";
            return RedirectToAction("List", new {id = model.NavigationModel.Page.PageNavigation.Id });
        }
コード例 #2
0
 public ActionResult Create(int pageId, int? id)
 {
     var image = id.HasValue ? _service.GetImages().Single(i=>i.Id == id.Value) : new Image{};
     var model = new ImageCreateViewModel { Image = image };
     model.NavigationModel = HomeIndexViewModelLoader.Create(pageId, _service);
     return View(model);
 }