首页 > 解决方案 > 在 asp.net 和 angular 7 中上传文件 null

问题描述

我将图像从角度上传到 .net 核心,但我收到的文件输入总是 null ,使用邮递员,它完全接收。我不知道为什么?你能帮我解决一下吗?太感谢了 !

[HttpPost("upload-file")]
public async Task<IActionResult> UploadFile(IFormFile file)
{
    try
    {
        //var file = Request.Form.Files[0];
        var rnd = FileHelper.RandomNumber();
        //var file = file;
        var folder = "Folder";
        var index = file.FileName.LastIndexOf('.');
        var onlyName = file.FileName.Substring(0, index);
        var fileName = onlyName + rnd;
        var extension = Path.GetExtension(file.FileName);
        var folderThumb = folder + "Thumbnail";
        var fileNameThumb = fileName + "Thumbnail";
        var t1 = Task.Run(() => FileHelper.SaveFile(folder, fileName, file));
        await Task.WhenAll(t1);

        var path = new MediaResponseModel()
        {
            Url = Url.Action("GetFile", "Media", new { folder = folder, fileName = string.Format("{0}{1}", fileName, extension) }, Request.Scheme),
            UrlThumbnail = Url.Action("GetFile", "Media", new { folder = folderThumb, fileName = string.Format("{0}{1}", fileNameThumb, extension) }, Request.Scheme),
            Title = onlyName
        };
        return Ok(path);
    }
    catch (System.Exception e)
    {
        throw e;
    }
}
handleFileInput(files: FileList) {
    const file = files.item(0);
    this.fileToUpload = {};
    this.fileToUpload.data = files.item(0);
    this.fileToUpload.fileName = files.item(0).name;
}

onUpload() {
    const formData = new FormData();

    formData.append('file', this.fileToUpload.data, this.fileToUpload.name);

    this.http.post('http://localhost:56000/api/media/upload-file', formData).subscribe(res => console.log(res));
}

标签: c#angularfileupload

解决方案


推荐阅读