/// <summary> /// Anybody downloads a file. /// </summary> /// <param name="fileName"></param> /// <returns></returns> public ActionResult Download(string fileName, int maxWidth = 0, int maxHeight = 0) { if (fileName == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } if (maxWidth != 0 || maxHeight != 0) { // Returns thumbnail. var bitmap = BlobHelper.DownloadAsBitmap("mediafile", fileName, maxWidth, maxHeight); if (bitmap == null) { return(HttpNotFound()); } using (var mem = new MemoryStream()) { bitmap.Save(mem, ImageFormat.Jpeg); return(File(mem.ToArray(), "image/jpeg")); } } else { // Returns raw file. var blob = BlobHelper.Download("mediafile", fileName); if (blob == null) { return(HttpNotFound()); } return(File(blob.Item1, blob.Item2)); } }