ajax C# webapi上傳圖片
阿新 • • 發佈:2019-02-25
ati context null 不存在 bmp name pat main.c 圖片路徑
html ajax上傳圖片到服務器 後端采用asp.net webapi
前端有各種現實上傳圖片的控件,樣式可以做的很美觀。我這裏只用基本的樣式做圖片上傳。
前端代碼
<input name="Userfile" id="Userfile" type="file"></span>
js代碼
var formDate = new FormData(); var files = $("#Userfile").get(0).files; formDate.append("Userfile", files[0]); //如果有其他參需要一起提交到後臺formDate.append("location", location); $.ajax({ type: "POST", url: url, contentType: false, cache: false, processData: false, data: formDate, error: function (request) { }, success:function (data) { } });
C# webapi代碼
[HttpPost] public object Save() { //圖片存儲路徑 string path = AppDomain.CurrentDomain.SetupInformation.ApplicationBase + "img/"; //用戶提交的數據 var Data = System.Web.HttpContext.Current.Request.Form;string filesrc = string.Empty; string src = string.Empty; //獲取上傳的文件 var httpPostedFile = HttpContext.Current.Request.Files; if (httpPostedFile != null && httpPostedFile.Count > 0) { var file = httpPostedFile[0]; string imgType = Path.GetExtension(file.FileName); //限制文件上傳類型 if (imgType.Contains(".jpg")|| imgType.Contains(".png")|| imgType.Contains(".bmp")) { string FileName = Guid.NewGuid().ToString() + imgType; filesrc = path + FileName; src = "/images/" + FileName; // 如果目錄不存在則要先創建 if (!Directory.Exists(uploadPath)) { Directory.CreateDirectory(uploadPath); }
file.SaveAs(filesrc); }
} if (!string.IsNullOrEmpty(src)) { //存儲圖片路徑到數據庫 } }
ajax C# webapi上傳圖片