在我的 Asp.Net MVC 應用程式中,我想實作一種方法,允許我下載存盤在 FTP 上的檔案。我想競爭以下代碼以使用流并避免先下載整個檔案然后將它們作為 FileResult 提供
public FileResult getBigFileFromFTP()
{
FtpWebRequest request = (FtpWebRequest)WebRequest.Create("ftp://ftp-location.com/test/bigfile.zip");
request.Method = WebRequestMethods.Ftp.DownloadFile;
request.Credentials = new NetworkCredential("ftpuser", "ftppwd");
FtpWebResponse response = (FtpWebResponse)request.GetResponse();
Stream responseStream = response.GetResponseStream();
//Missing code... I would like to serve the file during FTP download
}
uj5u.com熱心網友回復:
您可以FileResult從流創建一個。默認情況下,ASP.NET Core 在將回應發送到瀏覽器之前緩沖回應。這可能是大檔案的問題。為了避免這種情況,您需要禁用緩沖。
嘗試使用:
Response.BufferOutput = false;
return File(responseStream);
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/333244.html
標籤:C# asp.net-mvc
