public void UploadResizeAndSave(ref Profile profile, HttpPostedFileBase image = null) { string fileName = Guid.NewGuid() + Path.GetExtension(image.FileName); if (image != null) { image.SaveAs(HttpContext.Current.Server.MapPath("~/Content/Uploads/Temp/" + fileName)); } try { foreach (var size in PictureSizes.Profiles) { string nPath, nFileName; PictureService.ResizeAndSave("~/Content/Uploads/Temp/", fileName, size.Width, size.Height, out nPath, out nFileName); ProfileRepository.AddPicture(profile.ProfileId, nPath, nFileName, size.Width, size.Height); } } finally { if (image != null) { File.Delete(HttpContext.Current.Server.MapPath("~/Content/Uploads/Temp/" + fileName)); } } }