中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

ASP.NET Core中的文件怎么上傳與下載

小億
130
2024-05-09 17:58:56
欄目: 編程語言

在ASP.NET Core中,文件上傳和下載可以通過以下方式實現:

文件上傳:

  1. 在HTML表單中添加一個<input type="file">元素用于用戶選擇要上傳的文件。
  2. 在后端處理上傳文件的方法中,可以使用IFormFile類型的參數來接收上傳的文件數據。
  3. 使用FileStreamMemoryStream等類來將上傳的文件保存到服務器的指定位置。

示例代碼:

[HttpPost]
public async Task<IActionResult> UploadFile(IFormFile file)
{
    if (file == null || file.Length == 0)
    {
        return BadRequest("Invalid file");
    }

    var filePath = Path.Combine(Directory.GetCurrentDirectory(), "uploads", file.FileName);

    using (var stream = new FileStream(filePath, FileMode.Create))
    {
        await file.CopyToAsync(stream);
    }

    return Ok();
}

文件下載:

  1. 在后端處理文件下載的方法中,使用PhysicalFileProviderFileContentResult類來提供要下載的文件數據。
  2. 返回一個File類型的ActionResult對象,該對象包含要下載的文件路徑和MIME類型。

示例代碼:

public IActionResult DownloadFile(string fileName)
{
    var filePath = Path.Combine(Directory.GetCurrentDirectory(), "uploads", fileName);

    if (!System.IO.File.Exists(filePath))
    {
        return NotFound();
    }

    var provider = new PhysicalFileProvider(Directory.GetCurrentDirectory());
    var fileInfo = provider.GetFileInfo(fileName);

    var fileStream = System.IO.File.OpenRead(filePath);
    return File(fileStream, "application/octet-stream", fileName);
}

以上是ASP.NET Core中文件上傳與下載的簡單示例,實際應用中可能還需要考慮文件大小限制、文件類型限制、文件存儲路徑等問題。

0
永济市| 满城县| 龙井市| 伊金霍洛旗| 静宁县| 兴宁市| 峡江县| 荔浦县| 湖南省| 老河口市| 宣恩县| 泰州市| 沁源县| 建德市| 黄浦区| 新蔡县| 红原县| 富锦市| 额济纳旗| 甘洛县| 陈巴尔虎旗| 凤台县| 六安市| 固原市| 澜沧| 黑龙江省| 界首市| 广平县| 明星| 嘉禾县| 望江县| 石林| 永福县| 长宁区| 西昌市| 齐齐哈尔市| 凤山市| 民县| 高阳县| 济南市| 琼中|