You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何为API的File ActionResult传递文件大小属性?

你可以通过手动添加Content-Length HTTP响应头的方式,把文件大小传递给客户端——这是HTTP标准规定的用于告知资源大小的头字段,客户端会自动识别该字段获取文件大小。

具体实现很简单,在返回File结果前,往当前请求的响应头里添加这个字段即可:

public IActionResult DownloadFile(...)
{            
    string contentType = ..;
    string fileName = ..;
    DateTimeOffset? lastModified = ...;
    long fileSize = ...; // File size in bytes
    
    // 手动设置文件大小响应头
    Response.Headers.ContentLength = fileSize;
        
    return File(memory, contentType, fileName, lastModified, null);
}

需要注意:如果你的memory是MemoryStream,确保在返回前已经将其Position重置为0,否则可能导致文件内容传输异常。

这种方式不依赖特定的File方法重载,不管使用哪个版本的File返回结果,都能通过手动添加响应头的方式传递文件大小信息。

内容的提问来源于stack exchange,提问作者Shahar Shokrani

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.30 18:44:51