影片講解
單一檔案:IFormFile
複數檔案:IFormFileCollection
、IEnumerable<IFormFile>
、List<IFormFile>
、ICollection<IFormFile>
取得專案位置可以使用注入IWebHostEnvironment,_env.ContentRootPath來取得。
完整程式碼
namespace Todo.Controllers
{
[Route("api/[controller]")]
[ApiController]
public class FileUploadController : ControllerBase
{
private readonly IWebHostEnvironment _env;
public FileUploadController(IWebHostEnvironment env)
{
_env = env;
}
[HttpPost]
public void Post(ICollection<IFormFile> files)
{
var rootPath = _env.ContentRootPath + "\\wwwroot\\";
foreach (var file in files)
{
if (file.Length > 0)
{
var filePath = file.FileName;
using (var stream = System.IO.File.Create(rootPath + filePath))
{
file.CopyTo(stream);
}
}
}
}
}
}
以上就是這篇的簡單說明,想看詳細操作的話可以看影片。
新手分享學習成果,若有錯誤,煩請告知修正,感謝🙏
範例檔:下載
參考資料:
在 ASP.NET Core 上傳檔案