public async Task <IActionResult> Upload() { Microsoft.AspNetCore.Http.IFormCollection formCollection = Request.Form; Microsoft.AspNetCore.Http.IFormFileCollection formFiles = formCollection.Files; var uploads = Path.Combine(he.WebRootPath, "docs"); String DocsRutaNombreArchivo = ""; //Boolean fileUploaded = false; var ventaRequisito = await DB.Ventas_VentaRequisito.FindAsync(0); for (var i = 0; i < formFiles.Count; i++) { if (i == 0) { var file = formFiles[i]; if (file.Length > 0) { Int32 IdVentaRequisito = Convert.ToInt32(file.FileName.Replace(".pdf", "")); var GeneraNombreArchivo = DB.Generales_fRetornaCadena.FromSql($"SELECT * FROM \"Ventas\".\"fGeneraNombreDocumento\"({IdVentaRequisito})").ToList(); String NombreArchivo = GeneraNombreArchivo.FirstOrDefault().Cadena; DocsRutaNombreArchivo += NombreArchivo; var filePath = Path.Combine(uploads, NombreArchivo); using (var fileStream = new FileStream(filePath, FileMode.Create)) { await file.CopyToAsync(fileStream); //fileUploaded = true; } ventaRequisito = await DB.Ventas_VentaRequisito.FindAsync(IdVentaRequisito); ventaRequisito.PathArchivo = DocsRutaNombreArchivo; ventaRequisito.ArchivoCargado = true; DB.Update(ventaRequisito); await DB.SaveChangesAsync(); } } } //return fileUploaded; return(View(ventaRequisito)); }
/// <summary> /// 获取有效客户端文件控件集合,文件控件必须上传了内容,为空将被忽略, /// 注意:Form标记必须加入属性 enctype="multipart/form-data",服务器端才能获取客户端file控件. /// </summary> /// <returns></returns> public static List <IFormFile> GetFileControls() { var result = new List <IFormFile>(); Microsoft.AspNetCore.Http.IFormFileCollection files = HttpContext.Current.Request.Form.Files; if (files.Count == 0) { return(result); } for (int i = 0; i < files.Count; i++) { var file = files[i]; if (file.Length == 0) { continue; } result.Add(files[i]); } return(result); }
private void GetRestaurantImages(CreateRestaurantViewModel model, List <ImageViewModel> images, Microsoft.AspNetCore.Http.IFormFileCollection files) { if (files != null && files.Any()) { if (model.Images == null || !model.Images.Any() || model.Images.Count != files.Count) { return; } for (int i = 0; i < files.Count; i++) { // save file and get the uri //string uri = SaveRestaurantImageAndGetUri(files[i]); string uri = ImageSave(files[i], "restaurant"); var img = model.Images[i]; img.ImageUrl = uri; images.Add(img); } } }