Quais são as diferenças entre
Response.AddHeader("Content-Disposition", "attachment;filename=somefile.ext")
e
Response.AddHeader("Content-Disposition", "inline;filename=somefile.ext")
Não conheço as diferenças, porque quando uso uma ou outra, sempre recebo um prompt de janela pedindo para baixar o arquivo para as duas. Eu li as especificações, mas não tem noção.
asp.net
http-headers
Cleiton
fonte
fonte
Respostas:
Esse comportamento depende do navegador e do arquivo que você está tentando veicular. Com o recurso embutido, o navegador tentará abrir o arquivo no navegador.
Por exemplo, se você tiver um arquivo PDF e o Firefox / Adobe Reader, uma disposição em linha abrirá o PDF no Firefox, enquanto o anexo forçará o download.
Se você estiver exibindo um arquivo .ZIP, os navegadores não poderão exibi-lo em linha; portanto, para disposições em linha e anexo, o arquivo será baixado.
fonte
Se estiver embutido, o navegador deve tentar renderizá-lo na janela do navegador. Se não puder, recorrerá a um programa externo, solicitando ao usuário.
Com o anexo, ele irá imediatamente para o usuário e não tentará carregá-lo no navegador, seja ele possível ou não.
fonte
Também vale a pena mencionar que o inline tentará abrir os Documentos do Office (xls, doc etc.) diretamente do servidor, o que pode levar a um Prompt de credenciais do usuário.
veja este link:
http://forums.asp.net/t/1885657.aspx/1?Access+the+SSRS+Report+in+excel+format+on+server
alguém tentou entregar um relatório do Excel do SSRS via ASP.Net -> o usuário sempre era solicitado a inserir as credenciais. Depois de clicar em cancelar no prompt, ele seria aberto mesmo assim ...
Se a disposição do conteúdo estiver marcada como anexo, ela será salva automaticamente na pasta temporária após clicar em abrir e, em seguida, aberta no Excel a partir da cópia local.
fonte