Was sind die Unterschiede zwischen
Response.AddHeader("Content-Disposition", "attachment;filename=somefile.ext")
und
Response.AddHeader("Content-Disposition", "inline;filename=somefile.ext")
Ich kenne die Unterschiede nicht, denn wenn ich den einen oder anderen verwende, werde ich immer in einem Fenster aufgefordert, die Datei für beide herunterzuladen. Ich habe die Spezifikationen gelesen, aber es ist ahnungslos.
asp.net
http-headers
Cleiton
quelle
quelle
Antworten:
Dieses Verhalten hängt vom Browser und der Datei ab, die Sie bereitstellen möchten. Mit Inline versucht der Browser, die Datei im Browser zu öffnen.
Wenn Sie beispielsweise über eine PDF-Datei und Firefox / Adobe Reader verfügen, wird die PDF-Datei durch eine Inline-Disposition in Firefox geöffnet, während der Anhang das Herunterladen erzwingt.
Wenn Sie eine .ZIP-Datei bereitstellen, können Browser diese nicht inline anzeigen. Bei Inline- und Anhangsanordnungen wird die Datei heruntergeladen.
quelle
Wenn es inline ist, sollte der Browser versuchen, es im Browserfenster zu rendern. Wenn dies nicht möglich ist, wird auf ein externes Programm zurückgegriffen, das den Benutzer auffordert.
Mit Anhang geht es sofort zum Benutzer und versucht nicht, es in den Browser zu laden, ob es kann oder nicht.
quelle
Es kann auch erwähnenswert sein, dass inline versucht, Office-Dokumente (xls, doc usw.) direkt vom Server aus zu öffnen, was zu einer Eingabeaufforderung für Benutzeranmeldeinformationen führen kann.
siehe diesen Link:
http://forums.asp.net/t/1885657.aspx/1?Access+the+SSRS+Report+in+excel+format+on+server
Jemand hat versucht, einen Excel-Bericht von SSRS über ASP.Net zu liefern -> Der Benutzer wurde immer aufgefordert, die Anmeldeinformationen einzugeben. Nach dem Klicken auf Abbrechen an der Eingabeaufforderung wird es trotzdem geöffnet ...
Wenn die Inhaltsdisposition als Anhang markiert ist, wird sie nach dem Klicken auf Öffnen automatisch im temporären Ordner gespeichert und dann von der lokalen Kopie in Excel geöffnet.
quelle