چگونه یک فایل را در سرور با استفاده از Asp.net core WebApi اپلود کنیم؟
سلام دوستان
در این مقاله قصد داریم با استفاده از Asp.net core WebApi یک فایل در سرور اپلود کنیم
یک کنترلر با نام File بسازید و کانستراکتور(سازنده) آن را به شکل زیر تغییر دهید
private readonly IWebHostEnvironment _webHostEnvironment;
public FileController(IWebHostEnvironment webHostEnvironment)
{
this._webHostEnvironment = webHostEnvironment;
}
در ادامه یک اکشن به شکل زیر ایجاد کنید
پیشنهاد: جهت یادگیری برنامه نویسی وب با سی شارپ دوره
را مشاهده کنید
[HttpPost]
public async Task<IActionResult> Upload([FromForm]IFormFile file)
{
var path = $"{this._webHostEnvironment.WebRootPath}\\files";
if (!Directory.Exists(path))
Directory.CreateDirectory(path);
FileInfo fileInfo = new FileInfo(file.FileName);
var fullPath = Path.Combine(path, fileInfo.Name);
if (!System.IO.File.Exists(fullPath))
{
using (FileStream fileStream = new FileStream(fullPath, FileMode.Create))
{
await file.CopyToAsync(fileStream);
}
return new JsonResult(new { FileName = fileInfo.Name });
}
return BadRequest();
}
پایان.