public ActionResult Index(HttpPostedFileBase uploadfile)
        {
            UploadResponse response = new UploadResponse();

            if (uploadfile != null && uploadfile.ContentLength > 0)
            {
                ImageHandlerDBEntities db = new ImageHandlerDBEntities();
                tbl_Image img             = new tbl_Image();
                img.CreateDate = DateTime.Now;
                img.ImageId    = Guid.NewGuid();
                img.ImageName  = uploadfile.FileName;
                img.ImageType  = uploadfile.ContentType;
                using (BinaryReader br = new BinaryReader(uploadfile.InputStream))
                {
                    img.ImageData = br.ReadBytes((int)uploadfile.InputStream.Length);
                }
                db.tbl_Image.Add(img);
                db.SaveChanges();
                response.CreateDate = img.CreateDate;
                response.ImageId    = img.ImageId;
                response.ImageType  = img.ImageType;
                response.ImageName  = img.ImageName;
            }
            return(View(response));
        }
        public ActionResult List(int take = 10, int skip = 0)
        {
            var db       = new ImageHandlerDBEntities();
            var response = (from img in db.tbl_Image
                            select new UploadResponse
            {
                ImageId = img.ImageId,
                ImageName = img.ImageName,
                ImageType = img.ImageType,
                CreateDate = img.CreateDate
            })
                           .OrderBy(c => c.CreateDate)
                           .Take(take)
                           .Skip(skip)
                           .ToList();

            return(View(response));
        }
Exemple #3
0
        public void ProcessRequest(HttpContext context)
        {
            var  requestPaths = context.Request.Path.Split('/');
            Guid guid = Guid.Parse(requestPaths[requestPaths.Length - 1]);
            int  width = 0, height = 0;

            if (context.Request.QueryString.ContainsKey("width"))
            {
                width = int.Parse(context.Request.QueryString.Get("width"));
            }
            if (context.Request.QueryString.ContainsKey("height"))
            {
                height = int.Parse(context.Request.QueryString.Get("height"));
            }

            string imageName = guid.ToString() + context.Request.QueryString.ToString() + ".jpeg";

            byte[] imageData = null;
            if (File.Exists("C://ImageHandler/Images/" + imageName + ".jpeg"))
            {
                imageData = File.ReadAllBytes("C://ImageHandler/Images/" + imageName + ".jpeg");
            }
            else
            {
                var tblImage = new ImageHandlerDBEntities().tbl_Image.FirstOrDefault(c => c.ImageId == guid);
                if (tblImage != null)
                {
                    imageData = resizeImage(tblImage.ImageData, width, height, imageName);
                }
            }

            context.Response.Clear();
            context.Response.ContentType = "jpeg";
            context.Response.OutputStream.Write(imageData, 0, imageData.Length);
            context.Response.End();
        }