Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Boa tarde.
Tenho em meu banco de dados arquivos salvos em formato binário. Preciso, em certo momento do sistema, disponibilizar esses arquivos para download.
Consegui já transformá-los em "arquivos físicos" novamente, mas tenho um problema. Eles precisam ficar em uma pasta temporária e depois serem excluídos automaticamente.
O que tenho de código até o momento é:
FileStream download = new FileStream(caminho + "\\" + arq.Nome, FileMode.Create, FileAccess.Write);
download.Write(arq.Arquivo, 0, arq.Arquivo.Length);
download.Close();
Response.Redirect(caminho + "\\" + arq.Nome);
Nesse momento o arquivo está sendo criado em C:\temp, só que ele ficando aí não consigo disponibilizar para baixar. Se eu criar uma pasta temporário dentro do diretório do sistema resolve o problema do download, mas como faço para que o arquivo suma após ser baixado?
Obrigado.
Show de bola, Ivan. Mas você sabe se isso serve para qualquer extensão?
Posso ter diversos tipos de arquivos, como PDF, ZIP, JPG, TIFF, etc...
Valeuzão!
Ivan, já testei aqui e vi que dá certo sim com várias extensões.
Brigadão cara, me ajudou muito.
Abraços!
Ao invés de vc escrever o arquivo, tenta pegar o binario e ja disponibilizar para download.
da uma olhada neste código:
using (FileStream fs = File.OpenRead(path))
{