目前我已經存儲在二進制格式的任何類型的BD文件。我在文件上傳過程如下:從服務器下載文件
- 拖動&刪除文件和收集發送到服務器。
- 在服務器中收集每個文件的流。
- 每個流在BD轉換爲字節()
- 它almancena的字節()正確
現在,它的時間來下載文件,其中包括在字節從數據庫中獲取的數據( ),並直接從客戶處下載。
問題是我使用的方法不會拋出任何下載窗口,我不會犯這個錯誤。可能幫助的代碼。
Protected Sub grdDocumentoByExp_RowCommand(sender As Object, e As GridViewCommandEventArgs)
If e.CommandName = "cmdDownload" Then
Dim context As System.Web.HttpContext = System.Web.HttpContext.Current
Dim lFileName As String = e.CommandName
Dim lFile() As Byte = GetImageArrayBy_docID(e.CommandArgument)
Dim ms As Stream = New MemoryStream(lFile, 0, lFile.Length)
ms.Position = 0
ms.Close()
With context
.Response.Clear()
.Response.ClearHeaders()
.Response.ClearContent()
.Response.ContentType = "image/jpeg"
.Response.AddHeader("content-disposition", "attachment;filename=" & "Fichero1.jpg")
.Response.AddHeader("content-length", lFile.Length)
.Response.BinaryWrite(lFile)
.Response.End()
End With
End If
End Sub
的想法是如下: 網格具有運行的命令列,運行該代碼塊。 其中,收集來自數據庫的字節()(其內容看起來是正確的),被髮送到流,並通過當前上下文作爲BinaryWrite發送,但從不在瀏覽器中運行任何內容。
使用的客戶端是Firefox和Chrome,但沒有任何事情發生。指示我按照我們所看到的MIME文件(在本例中爲jpeg),但也有許多其他類型。
任何人都可以知道發生了什麼,或者我可以做錯嗎?
非常感謝you.tiendo。附上可能的幫助代碼。
。長度是整數。 – amelian 2013-03-05 14:08:55