阅读量:5
要使用.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); } }
- 在
Startup.cs
文件中,将FileController
添加到路由中,以便可以通过URL访问该动作方法。
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?}"); }); }
- 现在,您可以通过访问
/File/DownloadFile
来下载文件。
请注意,上述示例中的文件路径和文件名是示意性的,您需要根据实际情况进行替换。此外,还可以根据需要更改文件的MIME类型。