我在我的服務器中有一個word文檔,我想發送給我的客戶端。其實我希望他們下載該文件。我在運行時創建該文件,並且我想在從服務器下載它之後將其刪除。我在本地嘗試這種情況。創建文件後,我的服務器將其發送給客戶端。在Web瀏覽器中我看到這一點:發送文件給客戶端並將其刪除
我不想這樣。我希望Web瀏覽器打開保存文件對話框。我希望客戶端下載真實文件。這裏是我的代碼:
Guid temp = Guid.NewGuid();
string resultFilePath = Server.MapPath("~/formats/sonuc_" + temp.ToString() + ".doc");
if (CreateWordDocument(formatPath, resultFilePath , theLst)) {
Response.TransmitFile(resultFilePath);
Response.Flush();
System.IO.File.Delete(resultFilePath);
Response.End();
}
既然你提到了,我一直在關注這個例子:http://davidarodriguez.com/blog/2013/05/29/downloading-files-from-a-server-to-client-使用-asp-net-when-file-size-is-too-big-for-memorystream-using-generic-handlers-ashx /但是必須將文件名傳遞給.ashx類? – MilesDyson
您可以將一個名稱傳遞給.ashx,或者讓ashx從某處獲取該文件。重點是您必須指定要傳輸到客戶端/瀏覽器的數據類型,以及您希望如何處理這些數據,這是通過指定內容類型和標題來完成的。 – Kjartan