Angular + core 如何将文件数组从 Angular 上传到 Dot Net Core
Posted
技术标签:
【中文标题】Angular + core 如何将文件数组从 Angular 上传到 Dot Net Core【英文标题】:Angular + core How to upload Array of file from Angular to Dot Net Core 【发布时间】:2021-01-06 02:39:04 【问题描述】:这里正在获取要上传的文件数组。但我无法绑定我的数据
fileList: File[] = [];
listOfFiles: any[] = [];
onFileChanged(event: any)
for (var i = 0; i <= event.target.files.length - 1; i++)
var selectedFile = event.target.files[i];
this.fileList.push(selectedFile);
this.listOfFiles.push(selectedFile.name)
我正在将我的文件上传到服务器
upload()
const formData: any = new FormData();
formData.append('ofile',this.fileList)
console.log('form data variable : '+ formData.toString());
this._service.PostFormData(formData).subscribe(data=>
);
HTML 代码
<input type="file" (change)="onFileChanged($event)">
<input type="file" (change)="onFileChanged($event)">
<input type="file" (change)="onFileChanged($event)">
<!-- <button mat-icon-button (click)="removeSelectedFile(index)">delete</button> -->
<button (click)="upload()">Save</button>
我正在使用的核心端
public class Test
// public List<IFormFile> ofile get; set;
public byte[] ofile get; set;
控制器
[HttpPost]
public IActionResult GetName([FromForm]Test oTest)
这里我得到空值请帮助我如何克服这个问题
【问题讨论】:
【参考方案1】:你应该foreach文件列表并将文件一个一个添加到formData。
upload()
const formData: any = new FormData();
$.each(this.fileList, function (i, file)
formData.append('ofile', file);
);
this._service.PostFormData(formData).subscribe(data=>
);
型号:
public class Test
public List<IFormFile> ofile get; set;
【讨论】:
以上是关于Angular + core 如何将文件数组从 Angular 上传到 Dot Net Core的主要内容,如果未能解决你的问题,请参考以下文章
如何从.net core 2.1 Angular 6模板中的非相对路径导入ts和scss文件
如何将数据表从 .net core 5.0 web api 作为 json 传递到 Angular 前端?
将 ASP.Net Core Angular 模板从版本 8 更新到 9
将文件从 ASP.NET Core Web api 发布到另一个 ASP.NET Core Web api
如何将两个数组作为 POST 请求参数从 AJAX 发送到 MVC 控制器(ASP .NET Core 3.1 剃须刀)?