我有一个文件,我试图使用HttpResponseMessage返回到Web客户端。代码有效,但传输速度比从IIS虚拟目录中简单地获取相同文件慢5到10倍。我已经通过监控我的下载带宽消耗来验证它不是编码问题,从而永远不会破坏每秒250千字节,其中从IIS直接下载通常是其五倍。
这里是代码,剥离了它的基本要素并删除了错误捕获:
// Succeeded in getting the stream opened, so return with HTTP 200 status to the client.
var stream = new FileStream(uncPath, FileMode.Open,FileAccess.Read, FileShare.Read);
HttpResponseMessage result = new HttpResponseMessage(HttpStatusCode.OK);
result.Content = new StreamContent(stream);
result.Content.Headers.ContentType = new MediaTypeHeaderValue(MimeExtensionHelper.GetMimeType(uncPath));
return result;
我错过了什么吗?