Usuário com melhor resposta
Salvando arquivos gerados pelo servidor

Pergunta
-
Boa Tarde
Criei um app que gera um arquivo txt na pasta local C:
agora com a publicação no servidor de desenvolvimento ele gera o arquivo no c: do servidor
Como posso fazer para que após criar o arquivo txt pelo servidor de desenvolvimento ele salve este arquivo no c: do cliente?
Rafael Soares Desenvolvedor Web (Java,.NET) Desenvolvedor Mobile(Windows Phone 7, Android)
Respostas
-
Boas Rafael,
Assumindo que a tua aplicação é ASP.NET a solução é:
- criar e manter o ficheiro em memória
- usar o método HttpContext.Current.Response.BinaryWrite para escrever o ficheiro pata a OutputStream
- Alterar o HttpContext.Current.Response.ContentType para o tipo correcto (exemplo: "application/ms-excel")
- Adicionar o header Content-Disposition através de
- HttpContext.Current.Response.AddHeader("Content-Disposition", string.Format("attachment; filename=\"{0}\"", this.FileName));
- Terminar o pedido HttpContext.Current.Response.End() (notar que terminar abruptamente o pedido não é recomendavel pois interrompe o ciclo de vida do Request)
Tipicamente este processo realiza-se num HttpHandler e não numa página por questões de performance.
Nuno Gomes http://nunogomes.net
- Marcado como Resposta RafaChoks sexta-feira, 10 de fevereiro de 2012 18:05
Todas as Respostas
-
-
Boas Rafael,
Assumindo que a tua aplicação é ASP.NET a solução é:
- criar e manter o ficheiro em memória
- usar o método HttpContext.Current.Response.BinaryWrite para escrever o ficheiro pata a OutputStream
- Alterar o HttpContext.Current.Response.ContentType para o tipo correcto (exemplo: "application/ms-excel")
- Adicionar o header Content-Disposition através de
- HttpContext.Current.Response.AddHeader("Content-Disposition", string.Format("attachment; filename=\"{0}\"", this.FileName));
- Terminar o pedido HttpContext.Current.Response.End() (notar que terminar abruptamente o pedido não é recomendavel pois interrompe o ciclo de vida do Request)
Tipicamente este processo realiza-se num HttpHandler e não numa página por questões de performance.
Nuno Gomes http://nunogomes.net
- Marcado como Resposta RafaChoks sexta-feira, 10 de fevereiro de 2012 18:05
-
-
-