使用MVC Core下载文件

模糊的

我找不到使用MVC Core下载文件的参考。

我们有一个exe文件供会员从我们的网站下载。过去我们把

<a href=(file path)> Download < /a>供我们的用户点击。我想按照以下方式在MVC Core中做等效的事情

<a href=@ViewData["DownloadLink"]> Download < /a>

使用DownloadLink填充文件路径。

public class DownloadController : Controller
{
    [HttpGet]
    public IActionResult Index()
    {
        ViewData["DownloadLink"] = ($"~/Downloads/{V9.Version}.exe");
        return View();
    }
}

`

链接<a href=@ViewData["DownloadLink"]> Download < /a>获得正确的路径,但是单击该链接只会在地址栏中显示该路径。是否有设置下载链接的简单方法?

模糊的

我用这个答案张贴@Tieson吨至想出了这个解决方案

    public FileResult Download()
    {
        var fileName = $"{V9.Version}.exe";
        var filepath = $"Downloads/{fileName}";
        byte[] fileBytes = System.IO.File.ReadAllBytes(filepath);
        return File(fileBytes, "application/x-msdownload", fileName);
    }

现在是视图

<a asp-action="Download" asp->
Download

@Ageonix关于不需要〜进入wwwroot也是正确的

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章