我找不到使用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] 删除。
我来说两句