Net Coreを使用してファイルレスポンスストリームを作成する方法
.NET Coreでファイルレスポンスストリームを書くには、以下の手順に従ってください。
- まず、コントローラやアクションメソッドを使用するために、プロジェクトで `Microsoft.AspNetCore.Mvc` 名前空間が参照されていることを確認してください。
- FileControllerといったコントローラーを作成し、ファイルを返すアクションメソッドを追加します。アクションメソッド内では、FileStreamResultクラスを利用して、ファイルのレスポンスストリームを返します。
using Microsoft.AspNetCore.Mvc;
using System.IO;
public class FileController : Controller
{
public IActionResult DownloadFile()
{
string filePath = "path/to/your/file"; // 文件路径
string fileName = "your-file-name.ext"; // 文件名
// 读取文件流
var fileStream = new FileStream(filePath, FileMode.Open, FileAccess.Read);
// 返回文件响应流
return File(fileStream, "application/octet-stream", fileName);
}
}
- スタートアップ.cs
- ファイルコントローラー
public void ConfigureServices(IServiceCollection services)
{
services.AddControllersWithViews();
}
public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
{
// 省略其他代码
app.UseRouting();
app.UseEndpoints(endpoints =>
{
endpoints.MapControllerRoute(
name: "default",
pattern: "{controller=Home}/{action=Index}/{id?}");
});
}
- ファイル/ファイルをダウンロード
ファイルパスとファイル名は上記の例示であり、実際のものに置き換えてください。また、ファイルのMIMEタイプは必要に応じて変更してください。