public ActionResult <string> UPTX(string strUserName) { Result result = new Result(); result.avatarUrls = new ArrayList(); result.success = false; result.msg = "Failure!"; var files = Request.Form.Files; //取服务器时间+8位随机码作为部分文件名,确保文件名无重复。 string fileName = DateTime.Now.ToString("yyyyMMddhhmmssff") + UploadHelp.CreateRandomCode(8); int avatarNumber = 1; foreach (var file in files) { string fieldName = ContentDispositionHeaderValue.Parse(file.ContentDisposition).FileName.Trim('"'); string filePath = hostingEnv.WebRootPath; if (!Directory.Exists(filePath + $@"\upload\tx\")) { Directory.CreateDirectory(filePath); } if (fieldName == "__source") { result.sourceUrl = string.Format("/upload/tx/tx{0}.jpg", fileName); string fileFullName = filePath + result.sourceUrl; using (FileStream fs = System.IO.File.Create(fileFullName)) { file.CopyTo(fs); fs.Flush(); } } //头像图片(file 域的名称:__avatar1,2,3...)。 else { string virtualPath = string.Format("/upload/tx/{0}_{1}.jpg", avatarNumber, strUserName); result.avatarUrls.Add(virtualPath); string fileFullName = filePath + virtualPath; using (FileStream fs = System.IO.File.Create(fileFullName)) { file.CopyTo(fs); fs.Flush(); } avatarNumber++; } } result.success = true; result.msg = "Success!"; //返回图片的保存结果(返回内容为json字符串,可自行构造,该处使用Newtonsoft.Json构造) // Response.Write(JsonConvert.SerializeObject(result)); return(Ok(result)); }
public ActionResult <string> UPPIC() { var files = Request.Form.Files; long size = files.Sum(f => f.Length); if (size > 104857600) { ReturnModel.ErrorMsg = "大小不能超过100M"; } List <string> filePathResultList = new List <string>(); foreach (var file in files) { var fileName = ContentDispositionHeaderValue.Parse(file.ContentDisposition).FileName.Trim('"'); string filePath = hostingEnv.WebRootPath + $@"\upload\pic\"; if (!Directory.Exists(filePath)) { Directory.CreateDirectory(filePath); } string suffix = fileName.Split('.')[1]; if (UploadHelp.GetFileType(suffix) != "pic") { ReturnModel.ErrorMsg = "只能上传图片格式"; } fileName = Guid.NewGuid() + "." + suffix; string fileFullName = filePath + fileName; using (FileStream fs = System.IO.File.Create(fileFullName)) { file.CopyTo(fs); fs.Flush(); } filePathResultList.Add("/upload/pic/" + fileName); } ReturnModel.Result = filePathResultList; //返回图片的保存结果(返回内容为json字符串,可自行构造,该处使用Newtonsoft.Json构造) // Response.Write(JsonConvert.SerializeObject(result)); return(Ok(ReturnModel)); }