通过App, 网页或小程序上传文件到服务器上常见的一个功能,本文演示如何在 .NET Core 3 中实现文件上传的 WebApi。
为简化案例,突出服务端接收文件的基本功能,本例中并不会把上传的文件存入到数据库中,而是简单的保存在服务端的特定目录下。
实现 Post 方法
我们使用一个 Http Post 方法来接收用户上传的文件。 在 .NET Core 中,要接收到文件,只需要将方法的参数设置为: IFormFile 类型即可。 如下:
1 | public async Task<ApiResult> UploadFile(IFormFile file) { |
文件上传到服务器上后,实际上存放在临时文件中的,我们通过 IFormFile 可以访问到该文件。 在接下来的代码中,我们将建立一个本地目录,并为上传的文件准备要给随机的文件名,然后把上传的文件内容复制到新文件中。
1 | [ ] |
完整的代码
上传类的完整代码如下:
1 | using System; |