/// <summary> /// 將Base64位碼保存成圖片 /// </summary> /// <param name="UserPhoto">Base64位碼</param> /// <returns></returns> public IHttpActionResult UploadImageByBase64String(ID UserPhoto) { if (!ModelState.IsValid) { LogHelper.WriteLog(ErrorPrompt.ValidationFailure); return BadRequest(ModelState); } string result; //圖片路徑 string filePath = HttpContext.Current.Server.MapPath("~/" + @System.Configuration.ConfigurationManager.AppSettings["ImagePath"]); try { byte[] bt = Convert.FromBase64String(UserPhoto.id);//獲取圖片base64 string fileName = DateTime.Now.Year.ToString() + DateTime.Now.Month.ToString();//年月 string ImageFilePath = "/Image" + "/" + fileName; if (System.IO.Directory.Exists(HttpContext.Current.Server.MapPath(ImageFilePath)) == false)//如果不存在就創建文件夾 { System.IO.Directory.CreateDirectory(HttpContext.Current.Server.MapPath(ImageFilePath)); } string ImagePath = HttpContext.Current.Server.MapPath(ImageFilePath) + "/" + System.DateTime.Now.ToString("yyyyHHddHHmmss");//定義圖片名稱 File.WriteAllBytes(ImagePath + ".png", bt); //保存圖片到服務器,然后獲取路徑 result = ImagePath + ".png";//獲取保存后的路徑 } catch (Exception e) { throw e; } LogHelper.WriteLog(ErrorPrompt.Success); return Ok(result); }
