Skip to content

asp dotnet core 提供大文件下载的测试

Updated: at 08:22,Created: at 02:04

本文仅仅是提供测试使用的代码

提供文件下载只需要返回 PhysicalFile 方法,如下面代码

[HttpGet]
public IActionResult Get()
{
var folder = Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location);
var file = Path.Combine(folder, "big file");
const string mime = "application/octet-stream";
return PhysicalFile(file, mime);
}

本文的 big file 是程序运行创建的垃圾文件

private void WriteBigFile()
{
var folder = Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location);
var file = Path.Combine(folder, "big file");
if (!File.Exists(file))
{
using (var stream = new FileStream(file, FileMode.Create))
{
for (int i = 0; i < 100000000; i++)
{
stream.WriteByte(0);
}
}
}
}

测试代码放在 github 欢迎小伙伴访问


知识共享许可协议

原文链接: http://blog.lindexi.com/post/asp-dotnet-core-%E6%8F%90%E4%BE%9B%E5%A4%A7%E6%96%87%E4%BB%B6%E4%B8%8B%E8%BD%BD%E7%9A%84%E6%B5%8B%E8%AF%95

本作品采用 知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议 进行许可。 欢迎转载、使用、重新发布,但务必保留文章署名 林德熙 (包含链接: https://blog.lindexi.com ),不得用于商业目的,基于本文修改后的作品务必以相同的许可发布。如有任何疑问,请与我 联系