我必須觸發用戶將大文件下載到Web瀏覽器,在此創建要在服務器上傳輸的文件,然後立即將其刪除。我找到了足夠的例子來看看我應該使用Response.TransmitFile還是Response.WriteFile ...但是聽說兩者都存在問題:WriteFile vs TransmitFile傳輸後需要從服務器上刪除的大文件
WriteFile是同步的,但它在發送之前將文件緩衝在內存中給用戶。由於我正在處理非常大的文件,這可能會導致問題。
TransmitFile不在本地進行緩衝,因此它對大文件起作用,但它是異步的,所以在調用TransmitFile後我無法刪除文件。顯然刷新文件並不能保證我可以刪除它?
處理這個問題的最好方法是什麼?
還有BinaryWrite也...我可以循環通過一個文件流,複製它分段?