Jakie są różnice między
Response.AddHeader("Content-Disposition", "attachment;filename=somefile.ext")
i
Response.AddHeader("Content-Disposition", "inline;filename=somefile.ext")
Nie znam różnic, ponieważ kiedy korzystam z jednego lub drugiego, zawsze pojawia się okno z prośbą o pobranie pliku dla obu z nich. Przeczytałem specyfikację, ale nie ma pojęcia.
asp.net
http-headers
Cleiton
źródło
źródło
Odpowiedzi:
To zachowanie zależy od przeglądarki i pliku, który próbujesz podać. W trybie inline przeglądarka spróbuje otworzyć plik w przeglądarce.
Na przykład, jeśli masz plik PDF i Firefox / Adobe Reader, wbudowane polecenie otworzy plik PDF w przeglądarce Firefox, a załącznik zmusi go do pobrania.
Jeśli podajesz plik .ZIP, przeglądarki nie będą mogły wyświetlać go bezpośrednio, więc w przypadku rozporządzeń wbudowanych i załączników plik zostanie pobrany.
źródło
Jeśli jest wbudowany, przeglądarka powinna spróbować go wyrenderować w oknie przeglądarki. Jeśli nie, skorzysta z zewnętrznego programu, monitując użytkownika.
Z załącznikiem natychmiast przejdzie do użytkownika i nie będzie próbował załadować go do przeglądarki, czy może, czy nie.
źródło
Warto również wspomnieć, że inline spróbuje otworzyć Dokumenty Office (xls, doc itp.) Bezpośrednio z serwera, co może spowodować wyświetlenie monitu o poświadczenia użytkownika.
zobacz ten link:
http://forums.asp.net/t/1885657.aspx/1?Access+the+SSRS+Report+in+excel+format+on+server
ktoś próbował dostarczyć raport Excel z SSRS przez ASP.Net -> użytkownik zawsze był proszony o podanie poświadczeń. Po kliknięciu Anuluj w monicie i tak zostanie otwarty ...
Jeśli Dyspozycja treści jest oznaczona jako załącznik, zostanie automatycznie zapisana w folderze tymczasowym po kliknięciu opcji Otwórz, a następnie otwarta w programie Excel z kopii lokalnej.
źródło