コード例 #1
0
        public int SaveImage(string link)
        {
            // file name ex: image1.jpg
            var fileName = Path.GetFileName(link);
            // file extend
            var exts = Path.GetExtension(link);

            using (var client = new WebClient())
            {
                var fileNameDownload = DateTime.Now.Ticks.ToString() + "_" + fileName;
                client.Headers.Add("user-agent", "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.2; .NET CLR 1.0.3705;)");
                client.DownloadFile(link, HttpContext.Server.MapPath(ConfigWeb.ImageThumpPath + fileNameDownload));
                System.IO.File.Copy(HttpContext.Server.MapPath(ConfigWeb.ImageThumpPath + fileNameDownload), HttpContext.Server.MapPath(ConfigWeb.ImagePath + fileNameDownload));

                var picture = new tblPicture
                {
                    FileName    = fileNameDownload,
                    CreatedBy   = string.Empty,
                    UpdatedBy   = string.Empty,
                    DateCreated = DateTime.Now,
                    DateUpdated = DateTime.Now,
                    IsShow      = true,
                    IsDeleted   = false
                };

                pictureRepository.Add(picture);

                return(picture.ID);
            }
        }
コード例 #2
0
        public ActionResult DeleteImg(int idpicture)
        {
            tblPicture tblPic = db.tblPictures.Find(idpicture);
            tblAll     proPic = new tblAll();

            db.tblPictures.Remove(tblPic);
            db.SaveChanges();
            DeleteIMG(proPic.clPicture.OriginalFilepath);
            return(View(tblPic));
        }
コード例 #3
0
        public async Task <ActionResult <JsonR> > Post([FromForm] tblPicture model)
        {
            long idVisit = MYHelper.getIdVisitbyIdReception(model.IdReception, model.date);

            if (idVisit < 1)
            {
                return new JsonR {
                           Title = "error", Message = "چنین ویزیتی وجود ندارد"
                }
            }
            ;
            model.IdVisit = idVisit;


            try
            {
                string guidefile = string.Empty;

                if (model.Image.Length > 0)
                {
                    IFormFile files = model.Image;
                    if (string.IsNullOrEmpty(Path.GetExtension(files.FileName)))
                    {
                        guidefile = Guid.NewGuid() + ".jpg";
                    }
                    else
                    {
                        guidefile = Guid.NewGuid() + Path.GetExtension(files.FileName);
                    }
                    var filePath = Path.Combine(_hostingEnvironment.WebRootPath, "FileUpload", guidefile);
                    using (var fileStream = new FileStream(filePath, FileMode.Create))
                    {
                        await files.CopyToAsync(fileStream);

                        fileStream.Flush();
                        model.Filepath = guidefile;
                    }
                }

                await repository.Add(model);

                return(new JsonR {
                    Title = "success", Message = guidefile
                });
            }
            catch (Exception err)
            {
                return(new JsonR {
                    Title = "error", Message = err.Message
                });
            }
        }
コード例 #4
0
        public async Task <ActionResult <bool> > Put(long id, tblPicture model)
        {
            if (id != model.Id)
            {
                return(BadRequest());
            }

            try
            {
                await repository.Update(model);

                return(true);
            }
            catch (DbUpdateConcurrencyException)
            {
                return(false);
            }
        }
コード例 #5
0
ファイル: PictureController.cs プロジェクト: jumker388/rd2018
        public ActionResult Action(tblPicture picture)
        {
            if (System.IO.File.Exists(Server.MapPath(ConfigWeb.TempPath + picture.FileName)))
            {
                picture.Size = new System.IO.FileInfo(Server.MapPath(ConfigWeb.TempPath + picture.FileName)).Length;

                FileUtility.MoveFile(StaticEnum.FileType.Image, picture.FileName);
            }

            if (picture.ID == 0)
            {
                picture.CreatedBy   = string.Empty;
                picture.UpdatedBy   = string.Empty;
                picture.DateCreated = DateTime.Now;
                picture.DateUpdated = DateTime.Now;
                picture.IsShow      = true;
                picture.IsDeleted   = false;
                pictureRepository.Add(picture);
            }
            else
            {
                picture.UpdatedBy = string.Empty;

                var obj = pictureRepository.GetById <tblPicture>(picture.ID);

                UpdateModel(obj);

                picture.DateUpdated = DateTime.Now;

                pictureRepository.Update(obj);
            }

            return(Json(new
            {
                Error = false
            }, JsonRequestBehavior.AllowGet));
        }
コード例 #6
0
        public void SaveImg(tblAll productPicture)
        {
            var    t          = productPicture.cfile == null ? "" : productPicture.cfile;
            var    file       = t.Replace("data:image/png;base64,", "");
            var    photoBytes = Convert.FromBase64String(file);
            string format     = "jpg";

            if (productPicture.isactive == 1)
            {
                productPicture.isactive = 1;
            }
            else
            {
                productPicture.isactive = 2;
            }
            var picture = new tblAll
            {
                clPicture = new tblPicture {
                    ProductsId = productPicture.idProducts, AngleType = 0, Converted = DateTime.Now, ToCheck = true, Type_id = 1, Title = productPicture.nameImg, Position = productPicture.isactive
                }
            };

            if (productPicture.idpicture == 0)
            {
                var settings = new ResizeSettings();
                settings.Scale  = ScaleMode.DownscaleOnly;
                settings.Format = format;

                //string uploadFolder = picture.DirectoryPhysical;

                string path = Server.MapPath("~/fileUpload/") + DateTime.Now.Day + DateTime.Now.Month + "/";
                // check for directory
                if (!Directory.Exists(path))
                {
                    Directory.CreateDirectory(path);
                }

                // filename with placeholder for size
                if (picture.GetConvertedFileName() == null || string.IsNullOrWhiteSpace(picture.GetConvertedFileName()))
                {
                    picture.SetFileName(DateTime.Now.Day.ToString() + DateTime.Now.Month.ToString() + "_" + picture.CreateFilename() + "_{0}." + format);
                }

                if (picture.GetFilePathPhysical(tblAll.PictureSize.Large) != null)
                {
                    string dest = path + picture.FileName(tblAll.PictureSize.Large);
                    settings.MaxWidth  = 800;
                    settings.MaxHeight = 800;
                    if (picture.WaterMarkLarge == tblAll.WatermarkType.None)
                    {
                        ImageBuilder.Current.Build(photoBytes, dest, settings, false, false);
                    }
                    // save biggest version as original
                    if (string.IsNullOrWhiteSpace(picture.clPicture.OriginalFilepath))
                    {
                        picture.clPicture.OriginalFilepath = picture.GetFilePath(tblAll.PictureSize.Large);
                    }
                }

                if (picture.GetFilePathPhysical(tblAll.PictureSize.Medium) != null)
                {
                    string dest = path + picture.FileName(tblAll.PictureSize.Medium);
                    settings.MaxWidth  = 300;
                    settings.MaxHeight = 300;
                    if (picture.WaterMarkLarge == tblAll.WatermarkType.None)
                    {
                        ImageBuilder.Current.Build(photoBytes, dest, settings, false, false);
                    }
                    // save biggest version as original
                    if (string.IsNullOrWhiteSpace(picture.clPicture.OriginalFilepath))
                    {
                        picture.clPicture.OriginalFilepath = picture.GetFilePath(tblAll.PictureSize.Medium);
                    }
                }


                db.tblPictures.Add(picture.clPicture);
                db.SaveChanges();
            }
            if (productPicture.idpicture > 0)
            {
                tblPicture tblpict = db.tblPictures.Find(productPicture.idpicture);
                tblpict.Title           = productPicture.nameImg;
                tblpict.Position        = productPicture.isactive;
                db.Entry(tblpict).State = EntityState.Modified;
                db.SaveChanges();
                RedirectToAction("Index", "adminProducts");
            }
        }
コード例 #7
0
        public void SaveImg(PictureModel newPicture)
        {
            var    t          = newPicture.cfile ?? "";
            var    file       = t.Replace("data:image/png;base64,", "");
            var    photoBytes = Convert.FromBase64String(file);
            string format     = "jpg";

            if (newPicture.isactive == 1)
            {
                newPicture.isactive = 1;
            }
            else
            {
                newPicture.isactive = 2;
            }
            var picture = new PictureModel
            {
                TblPicture = new tblPicture {
                    ProductsId = newPicture.idProducts, AngleType = 0, Converted = DateTime.Now, ToCheck = true, Type_id = 1, Title = newPicture.nameImg, Position = newPicture.isactive
                }
            };

            if (newPicture.idpicture == 0)
            {
                var settings = new ResizeSettings();
                settings.Scale           = ScaleMode.UpscaleCanvas;
                settings.Format          = format;
                settings.BackgroundColor = Color.Silver;
                //string uploadFolder = picture.DirectoryPhysical;

                string path = Server.MapPath("~/fileUpload/") + DateTime.Now.Day + DateTime.Now.Month + "/";
                // check for directory
                if (!Directory.Exists(path))
                {
                    Directory.CreateDirectory(path);
                }

                // filename with placeholder for size
                if (picture.GetConvertedFileName() == null || string.IsNullOrWhiteSpace(picture.GetConvertedFileName()))
                {
                    picture.SetFileName(DateTime.Now.Day.ToString() + DateTime.Now.Month.ToString() + "_" + picture.CreateFilename() + "_{0}." + format);
                }


                if (picture.GetFilePathPhysical(PictureModel.PictureSize.Large) != null)
                {
                    string dest = path + picture.FileName(PictureModel.PictureSize.Large);
                    settings.Width  = 870;
                    settings.Height = 460;
                    if (picture.WaterMarkLarge == PictureModel.WatermarkType.None)
                    {
                        ImageBuilder.Current.Build(photoBytes, dest, settings, false, false);
                    }
                    // save biggest version as original
                    if (string.IsNullOrWhiteSpace(picture.TblPicture.OriginalFilepath))
                    {
                        picture.TblPicture.OriginalFilepath = picture.GetFilePath(PictureModel.PictureSize.Large);
                    }
                }

                if (picture.GetFilePathPhysical(PictureModel.PictureSize.Medium) != null)
                {
                    string dest = path + picture.FileName(PictureModel.PictureSize.Medium);
                    settings.Width  = 370;
                    settings.Height = 335;
                    if (picture.WaterMarkLarge == PictureModel.WatermarkType.None)
                    {
                        ImageBuilder.Current.Build(photoBytes, dest, settings, false, false);
                    }
                    // save biggest version as original
                    if (string.IsNullOrWhiteSpace(picture.TblPicture.OriginalFilepath))
                    {
                        picture.TblPicture.OriginalFilepath = picture.GetFilePath(PictureModel.PictureSize.Medium);
                    }
                }


                if (picture.GetFilePathPhysical(PictureModel.PictureSize.Small) != null)
                {
                    string dest = path + picture.FileName(PictureModel.PictureSize.Small);

                    settings.Width  = 270;
                    settings.Height = 215;
                    if (picture.WaterMarkLarge == PictureModel.WatermarkType.None)
                    {
                        ImageBuilder.Current.Build(photoBytes, dest, settings, false, false);
                    }
                    // save biggest version as original
                    if (string.IsNullOrWhiteSpace(picture.TblPicture.OriginalFilepath))
                    {
                        picture.TblPicture.OriginalFilepath = picture.GetFilePath(PictureModel.PictureSize.Small);
                    }
                }
                if (picture.GetFilePathPhysical(PictureModel.PictureSize.Tiny) != null)
                {
                    string dest = path + picture.FileName(PictureModel.PictureSize.Tiny);
                    settings.Width  = 170;
                    settings.Height = 147;
                    if (picture.WaterMarkLarge == PictureModel.WatermarkType.None)
                    {
                        ImageBuilder.Current.Build(photoBytes, dest, settings, false, false);
                    }
                    // save biggest version as original
                    if (string.IsNullOrWhiteSpace(picture.TblPicture.OriginalFilepath))
                    {
                        picture.TblPicture.OriginalFilepath = picture.GetFilePath(PictureModel.PictureSize.Tiny);
                    }
                }
                db.tblPictures.Add(picture.TblPicture);
                db.SaveChanges();
            }
            if (newPicture.idpicture > 0)
            {
                tblPicture tblpict = db.tblPictures.Find(newPicture.idpicture);
                tblpict.Title           = newPicture.nameImg;
                tblpict.Position        = newPicture.isactive;
                db.Entry(tblpict).State = EntityState.Modified;
                db.SaveChanges();
            }
        }