public static BlobFileModel GetFileInfo(BlobFileType fileType, string key, bool withFileData = true) { CloudBlobContainer container = GetContainer(fileType.ToString()); CloudBlockBlob blob = container.GetBlockBlobReference(key); if (blob == null || !blob.Exists()) return null; blob.FetchAttributes(); BlobFileModel file = new BlobFileModel(blob, withFileData); return file; }
public static void InsertFileWithStaticName(BlobFileType fileType, string staticFileName, BlobFileModel file, string userId = "") { CloudBlobContainer container = GetContainer(fileType.ToString()); CloudBlockBlob blob = container.GetBlockBlobReference(staticFileName); file.Data.Position = 0; blob.UploadFromStream(file.Data); blob.Metadata["FileName"] = file.FileName; blob.Metadata["ContentType"] = file.ContentType; blob.Metadata["ContentLength"] = file.Data.Length.ToString(); blob.Metadata["BlobFileType"] = fileType.ToString(); blob.Metadata["DtUploaded"] = DateTime.Now.ToString(CultureInfo.InvariantCulture); blob.SetMetadata(); }
public BlobFile AddWatermark(string userId, BlobFile blobFileOriginal, HttpPostedFileBase file) { Stream stream = AddWaterMarkToImage(file); BlobFileModel blobWatermark = new BlobFileModel(stream, string.Format("{0}", blobFileOriginal.Filename), "image/png"); BlobFile blobFile = new BlobFile { Container = (int)BlobFileType.ImagesWaterMark, CreatedBy = userId, Filename = blobWatermark.FileName, BlobKey = Common.GetGuid(), dtCreated = DateTime.Now }; CloudStorageManagerHelper.InsertFileWithStaticName((BlobFileType)blobFile.Container, blobFile.BlobKey, blobWatermark, userId); return blobFile; }
/// <summary> /// insert File in the Blob. /// Modify the image to add a watermark and add to a Blob. /// </summary> /// <param name="userId"></param> /// <param name="file"></param> /// <returns>return List of blobs relationship with the image</returns> public List<BlobFile> CreateImage(string userId, HttpPostedFileBase file) { BlobFileModel blobOriginal = new BlobFileModel(file); BlobFile blobFile = new BlobFile { Container = (int)BlobFileType.ImagesOriginal, CreatedBy = userId, Filename = blobOriginal.FileName, BlobKey = Common.GetGuid(), dtCreated = DateTime.Now }; CloudStorageManagerHelper.InsertFileWithStaticName(BlobFileType.ImagesOriginal, blobFile.BlobKey, blobOriginal, userId); List<BlobFile> lst = new List<BlobFile>(); lst.Add(blobFile); lst.Add(AddWatermark(userId,blobFile, file)); return lst; }
public static BlobFileModel GetFileInfo(BlobFileType fileType, string key, DateTime filerDate, bool withFileData = true) { CloudBlobContainer container = GetContainer(fileType.ToString()); CloudBlockBlob blob = container.GetBlockBlobReference(key); if (blob == null || !blob.Exists()) return null; blob.FetchAttributes(); if (!blob.Metadata.Any() && (blob.Metadata["DtUploaded"] == null || Convert.ToDateTime(blob.Metadata["DtUploaded"]) > filerDate)) { blob.Delete(); return null; } BlobFileModel file = new BlobFileModel(blob, withFileData); return file; }
public static void SaveImagesBlob(string userId, HttpPostedFileBase upImage) { #region Create Blob Original Image BlobFileModel blobOriginal = new BlobFileModel(upImage); BlobFile blobFile = new BlobFile { Container = (int)BlobFileType.ImagesOriginal, CreatedBy = userId, Filename = blobOriginal.FileName, BlobKey = Common.GetGuid(), dtCreated = DateTime.Now }; #endregion CloudStorageManagerHelper.InsertFileWithStaticName(BlobFileType.ImagesOriginal, blobFile.BlobKey, blobOriginal, userId); BlobFileModel blobWaterMark = CloudStorageManagerHelper.GetFileInfo(BlobFileType.ImagesOriginal, "Watermark.png"); Bitmap imageWithWaterMark= AddWaterMark(blobOriginal.Data); byte[] data = imageWithWaterMark.ImageToByteArray(); BlobFileModel blobImageWithWaterMark = new BlobFileModel(imageWithWaterMark.ToStream(ImageFormat.Png), string.Format("{0}_WaterMark", blobOriginal.FileName), "Image"); BlobFile blobFileWithWaterMark = new BlobFile { Container = (int)BlobFileType.ImagesWaterMark, CreatedBy = userId, Filename = blobImageWithWaterMark.FileName, BlobKey = Common.GetGuid(), dtCreated = DateTime.Now }; CloudStorageManagerHelper.InsertFileWithStaticName((BlobFileType)blobFileWithWaterMark.Container, blobFileWithWaterMark.BlobKey, blobImageWithWaterMark, userId); var blobHelper = new BlobFilesHelper(); blobHelper.Add(blobFileWithWaterMark); }
/// <summary> /// Save the Shopping Cart Data /// </summary> /// <param name="userId"></param> /// <param name="shopCart"></param> private static void SaveCart(string userId, ShoppingCartModel shopCart) { // Serialize the object Shopping Cart model to json var serializer = new JavaScriptSerializer(); string content = serializer.Serialize(shopCart); string key = string.Format("{0}_Cart", userId); // Create the blob model BlobFilesHelper blobFileHelper = new BlobFilesHelper(); BlobFileModel blob = new BlobFileModel(content, key, "String"); BlobFile blobFile = null; if (blobFileHelper.Exist(key)) { // Get the blob File blobFile = blobFileHelper.GetByKey(key); blobFileHelper.Update(blobFile); } else { // Create the blob File blobFile = new BlobFile { Container = (int)BlobFileType.Cart, CreatedBy = userId, Filename = blob.FileName, BlobKey = blob.FileName, dtCreated = DateTime.Now }; blobFileHelper.Add(blobFile); } // Save the Blob model in Azure Storage CloudStorageManagerHelper.InsertFileWithStaticName((BlobFileType)blobFile.Container, key, blob); }