Example #1
0
        public ActionResult Create([Bind(Include = "ID,Data,Caption,Width,Height,Filename,ContentType")] SitePicture sitePicture, HttpPostedFileBase file)
        {
            sitePicture.ContentType = file.ContentType;
            sitePicture.Filename    = file.FileName;

            if (!ModelState.IsValidField("Data"))
            {
                ModelState["Data"].Errors.Clear();
                byte[] img       = new byte[file.ContentLength];
                int    byteCount = file.InputStream.Read(img, 0, img.Length);
                sitePicture.Data = img;
                if (!TryValidateModel(sitePicture))
                {
                    return(View(sitePicture));
                }
            }


            if (ModelState.IsValid)
            {
                db.SitePictures.Add(sitePicture);
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }

            return(View(sitePicture));
        }
Example #2
0
        private void UploadSitePicture(HttpContext context, string funType)
        {
            HttpFileCollection files = context.Request.Files;

            if (files.Count == 0)
            {
                context.Response.Write("{\"success\": false,\"message\": \"未找到任何可上传的文件,请检查!\"}");
                return;
            }

            var          userId = WebCommon.GetUserId();
            int          effect = 0;
            ImagesHelper ih     = new ImagesHelper();

            using (TransactionScope scope = new TransactionScope())
            {
                foreach (string item in files.AllKeys)
                {
                    HttpPostedFile file = files[item];
                    if (file == null || file.ContentLength == 0)
                    {
                        continue;
                    }

                    int fileSize       = file.ContentLength;
                    int uploadFileSize = int.Parse(WebConfigurationManager.AppSettings["UploadFileSize"]);
                    if (fileSize > uploadFileSize)
                    {
                        throw new ArgumentException("文件【" + file.FileName + "】大小超出字节" + uploadFileSize + ",无法上传,请正确操作!");
                    }
                    if (!UploadFilesHelper.IsFileValidated(file.InputStream, fileSize))
                    {
                        throw new ArgumentException("文件【" + file.FileName + "】为受限制的文件,请正确操作!");
                    }

                    //string fileName = file.FileName;
                    var bll = new SitePicture();
                    //if (bll.IsExist(userId, file.FileName, fileSize)) throw new ArgumentException("文件【" + file.FileName + "】已存在,请勿重复上传!");

                    string originalUrl = UploadFilesHelper.UploadOriginalFile(file, "SitePicture");

                    var model = new SitePictureInfo(Guid.Empty, userId, VirtualPathUtility.GetFileName(originalUrl), fileSize, VirtualPathUtility.GetExtension(originalUrl).ToLower(), VirtualPathUtility.GetDirectory(originalUrl.Replace("~", "")), Path.GetFileNameWithoutExtension(context.Server.MapPath(originalUrl)), funType, DateTime.Now);
                    CreateThumbnailImage(context, ih, context.Server.MapPath(originalUrl));

                    bll.Insert(model);
                    effect++;
                }

                scope.Complete();
            }

            if (effect > 0)
            {
                context.Response.Write("{\"success\": true,\"message\": \"已成功上传文件数:" + effect + "个\"}");
            }
            else
            {
                context.Response.Write("{\"success\": false,\"message\": \"上传失败,请检查!\"}");
            }
        }
Example #3
0
        public ActionResult DeleteConfirmed(int id)
        {
            SitePicture sitePicture = db.SitePictures.Find(id);

            db.SitePictures.Remove(sitePicture);
            db.SaveChanges();
            return(RedirectToAction("Index"));
        }
Example #4
0
        // GET: SitePictures/Edit/5
        public ActionResult Edit(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            SitePicture sitePicture = db.SitePictures.Find(id);

            if (sitePicture == null)
            {
                return(HttpNotFound());
            }
            return(View(sitePicture));
        }
Example #5
0
        public ResResultModel DeleteSitePicture(string itemAppend)
        {
            try
            {
                if (string.IsNullOrWhiteSpace(itemAppend))
                {
                    return(ResResult.Response(false, MC.Request_Params_InvalidError, ""));
                }
                var items = itemAppend.Split(new char[] { ',' }, StringSplitOptions.RemoveEmptyEntries);

                var bll = new SitePicture();
                if (!bll.DeleteBatch((IList <object>)items.ToList <object>()))
                {
                    return(ResResult.Response(false, MC.M_Save_Error, ""));
                }

                return(ResResult.Response(true, MC.M_Save_Ok, ""));
            }
            catch (Exception ex)
            {
                return(ResResult.Response(false, ex.Message, ""));
            }
        }
Example #6
0
        public ResResultModel GetSitePictureList(ListModel model)
        {
            try
            {
                if (model.PageIndex < 1)
                {
                    model.PageIndex = 1;
                }
                if (model.PageSize < 1)
                {
                    model.PageSize = 10;
                }
                int totalRecord = 0;
                var bll         = new SitePicture();

                var list = bll.GetCbbList(model.PageIndex, model.PageSize, out totalRecord, model.Keyword);
                return(ResResult.Response(true, "", "{\"total\":" + totalRecord + ",\"rows\":" + JsonConvert.SerializeObject(list) + "}"));
            }
            catch (Exception ex)
            {
                return(ResResult.Response(false, ex.Message, ""));
            }
        }
Example #7
0
        public ActionResult Manage([Bind(Include = "SitePictureID,UserID,DTime,SiteID,,Picture,UploadedFile,Comment")] SitePictureImg sitePicture)
        {
            if (sitePicture.UploadedFile != null || sitePicture.SitePictureID > 0)

            {
                SitePicture res = new SitePicture
                {
                    Comment       = sitePicture.Comment,
                    DTime         = DateTime.Now,
                    SiteID        = sitePicture.SiteID,
                    SitePictureID = sitePicture.SitePictureID,
                    UserID        = sitePicture.UserID
                };

                if (sitePicture.UploadedFile != null)
                {
                    string fn = sitePicture.UploadedFile.FileName.Substring(sitePicture.UploadedFile.FileName.LastIndexOf('\\') + 1);
                    fn = sitePicture.SiteID + "_" + fn;
                    string SavePath = System.IO.Path.Combine(Server.MapPath("~/Images"), fn);
                    sitePicture.UploadedFile.SaveAs(SavePath);

                    //System.Drawing.Bitmap upimg = new System.Drawing.Bitmap(siteTransaction.UploadedFile.InputStream);
                    //System.Drawing.Bitmap svimg = MyExtensions.CropUnwantedBackground(upimg);
                    //svimg.Save(System.IO.Path.Combine(Server.MapPath("~/Images"), fn));

                    res.Picture = fn;
                }
                else
                {
                    res.Picture = sitePicture.Picture;
                }

                base.BaseSave <SitePicture>(res, sitePicture.SitePictureID > 0);
            }

            return(RedirectToAction("Index"));
        }