ASP.NET core MVC EXCELファイルのダウンロードボタンを作成する

ASP.NET core MVC EXCELファイルのダウンロードボタンを作成する

ASP.NET core MVCで、EXCELファイルのダウンロードボタンを作成する手順を記述してます。.NETのバージョンは6を使用してます。

環境

  • OS windows10 pro
  • IDE Visual Studio 2022
  • .NET 6

Controller作成

「Controllers」フォルダ配下に「ExcelFileController.cs」を作成します。

using Microsoft.AspNetCore.Mvc;

namespace aspcoremvc.Controllers
{
    public class ExcelFileController.cs : Controller
    {
        [HttpPost]
        [ValidateAntiForgeryToken]
        public IActionResult ExcelDownload()
        {

            var file = System.IO.File.ReadAllBytes("Download/sample.xlsx");

            return File(file, System.Net.Mime.MediaTypeNames.Application.Octet, "sample.xlsx");

        }

    }
}

ダウンロードファイル

プロジェクト配下に「Download」フォルダを作成して「sample.xlsx」を作成します。

View作成

あとは、view側でcontrollerとactionを指定すれば完了です。

<button type="submit" name="ExcelDownload" asp-controller="ExcelFile" asp-action="ExcelDownload">
    ダウンロード
</button>