我有兴趣将一些代码移植到ASP.NET Core,并希望知道从ASP.NET Core Web服务发送文件(即“下载”文件)的最有效方式。从asp.net核心有效发送文件
和我的老ASP.NET代码,我用一个FileStream:
var content = new FileStream(
myLocation,
FileMode.Open, FileAccess.Read, FileShare.Read);
var result = new HttpResponseMessage(HttpStatusCode.OK)
{
Content = new StreamContent(content)
};
不过,我试图找到.NET相当于FreeBSD的的sendfile(),发现HttpResponse.TransmitFile。我认为这会更快?
我还担心该文件将不得不在击中用户之前从Kestrel跳出到IIS。有什么建议?
文件位于何处 - 文件系统或数据库? – Win
@Win,该文件位于文件系统上。 –