/// <summary> /// Updates the picture binary data /// </summary> /// <param name="picture">The picture object</param> /// <param name="binaryData">The picture binary data</param> /// <returns>Picture binary</returns> protected virtual PictureBinary UpdatePictureBinary(Picture picture, byte[] binaryData) { if (picture == null) { throw new ArgumentNullException(nameof(picture)); } var pictureBinary = picture.PictureBinary; var isNew = pictureBinary == null; if (isNew) { pictureBinary = new PictureBinary { PictureId = picture.Id } } ; pictureBinary.BinaryData = binaryData; if (isNew) { _pictureBinaryRepository.Insert(pictureBinary); } else { _pictureBinaryRepository.Update(pictureBinary); } return(pictureBinary); }
public virtual void InsertProductAnnouncementPictureMapping(PictureModel picture, Guid productAnnouncementId) { if (picture == null) { throw new ArgumentNullException(nameof(picture)); } if (picture.Id == default(Guid)) { picture.Id = Guid.NewGuid(); } _pictureRepository.Insert(picture); _productAnnouncementPictureMappingRepository.Insert(new ProductAnnouncementPictureMapping() { ProductAnnouncementId = productAnnouncementId, PictureId = picture.Id, IsMain = picture.IsMain, }); var binary = new PictureBinary() { Id = Guid.NewGuid(), BinaryData = picture.DataAsByteArray?.Length == null || picture.DataAsByteArray?.Length == 0 ? picture.GetDataAsByteArray() : picture.DataAsByteArray, PictureId = picture.Id }; _prictureBinaryRepository.Insert(binary); }
public void Delete(int id) { PictureBinary pictureBinary = db.PictureBinary.Find(id); if (pictureBinary != null) { db.PictureBinary.Remove(pictureBinary); } }
/// <summary> /// Updates the picture binary data /// </summary> /// <param name="picture">The picture object</param> /// <param name="binaryData">The picture binary data</param> /// <returns>Picture binary</returns> protected virtual PictureBinary UpdatePictureBinary(Picture picture, byte[] binaryData) { if (picture == null) { throw new ArgumentNullException(nameof(picture)); } var pictureBinary = GetPictureBinaryByPictureId(picture.Id); var isNew = pictureBinary == null; if (isNew) { pictureBinary = new PictureBinary { PictureId = picture.Id } } ; pictureBinary.BinaryData = binaryData; if (isNew) { _pictureBinaryRepository.Insert(pictureBinary); //event notification _eventPublisher.EntityInserted(pictureBinary); } else { _pictureBinaryRepository.Update(pictureBinary); //event notification _eventPublisher.EntityUpdated(pictureBinary); } return(pictureBinary); }
public RoxyFilemanFormFile(Picture picture, PictureBinary pictureBinary, string fileExtension) { _picture = picture; _pictureBinary = pictureBinary; _fileExtension = fileExtension; }
private void LoadImages(string imagePath, int thumbnailSize) { using (var context = new NopCommerceDbContext()) { var directories = Directory.GetDirectories(imagePath); foreach (var directory in directories) { DirectoryInfo directoryInfo = new DirectoryInfo(directory); var siteProducts = context.Products.Where(p => p.ManufacturerPartNumber == directoryInfo.Name).ToList(); foreach (var siteProduct in siteProducts) { Log = siteProduct.Name + "\r\n" + Log; if (siteProduct != null) { var productPictures = siteProduct.Product_Picture_Mapping; foreach (var productPicture in productPictures.ToList()) { var binaries = context.PictureBinaries.Where(pb => pb.PictureId == productPicture.PictureId); foreach (var binary in binaries) { context.PictureBinaries.Remove(binary); } context.Pictures.Remove(productPicture.Picture); } productPictures.Clear(); var files = directoryInfo.GetFiles("*.*"); foreach (var file in files) { if (file.Extension.ToLower() == ".png" || file.Extension.ToLower() == ".jpg" || file.Extension.ToLower() == ".jpeg") { var fileExtension = file.Extension.ToLower(); if (fileExtension == ".jpeg") { fileExtension = ".jpg"; } NetVips.Image smallerImage = NetVips.Image.Thumbnail(file.FullName, thumbnailSize); var picture = new Picture() { MimeType = $"image/{fileExtension.Replace(".", "")}" }; context.Pictures.Add(picture); context.SaveChanges(); var data = new PictureBinary() { PictureId = picture.Id, BinaryData = smallerImage.WriteToBuffer($"{fileExtension}") }; context.PictureBinaries.Add(data); siteProduct.Product_Picture_Mapping.Add(new Product_Picture_Mapping() { PictureId = picture.Id }); } } context.SaveChanges(); } } } } }
public void Update(PictureBinary item) { db.Entry(item).State = EntityState.Modified; }
public void Create(PictureBinary item) { db.PictureBinary.Add(item); }