在创建一个新的 WebAPI 项目之前,确保已经安装了 .NET Core SDK。下面是一个创建并实现上传文件接口功能的示例。
打开终端或命令提示符,导航到想要创建项目的目录。
执行以下命令来创建一个新的 WebAPI 项目:
dotnet new webapi -n MyFileUploadApi这将创建一个名为 MyFileUploadApi 的新的 WebAPI 项目。
cd MyFileUploadApi打开 Controllers 文件夹,并编辑 WeatherForecastController.cs 文件。
删除默认生成的代码,替换为以下代码:
using Microsoft.AspNetCore.Http;using Microsoft.AspNetCore.Mvc;using System;using System.IO;using System.Threading.Tasks;namespace MyFileUploadApi.Controllers{[ApiController][Route("[controller]")]public class FileUploadController : ControllerBase{[HttpPost]public async Task<IActionResult> Post(IFormFile file){try{if (file == null || file.Length == 0)return BadRequest("No file uploaded.");// 文件存储路径var filePath = Path.Combine(Directory.GetCurrentDirectory(), "Uploads", file.FileName);// 创建文件夹Directory.CreateDirectory(Path.GetDirectoryName(filePath));// 保存文件using (var stream = new FileStream(filePath, FileMode.Create)){await file.CopyToAsync(stream);}return Ok("File uploaded successfully.");}catch (Exception ex){return StatusCode(500, $"Internal server error: {ex}");}}}}这个控制器类中包含一个 Post 方法,用于处理上传文件的请求。它将接收一个 IFormFile 类型的参数,该参数将包含上传的文件。
保存文件并退出编辑器。
将项目运行起来:
dotnet run这将启动一个本地的开发服务器,监听 https://localhost:5001 和 http://localhost:5000。
POST 请求到 https://localhost:5001/FileUpload(或 http://localhost:5000/FileUpload),并将文件作为请求体的一部分上传。注意:确保 Content-Type 设置为 multipart/form-data。
在 Postman 中,你可以选择 Body 选项卡,在 form-data 类型下添加一个 Key 为 file 的字段,然后选择一个文件作为 Value。
200 OK 响应。这样,你就成功创建了一个具有上传文件接口功能的 WebAPI 项目。你可以根据自己的需要进行扩展和定制。

