Ich erbte eine. NET-Anwendung, die Benutzer ein PDF herunterladen können. Jetzt kann ich die PDF-Datei herunterladen, wenn ich lokal arbeite, aber wenn ich auf dem IIS-Server bereitstellen, stoße ich auf Probleme. Der Download funktioniert in Firefox, funktioniert aber nicht in Chrome und manchmal auch in IE. Die Tatsache, dass ich es in meiner lokalen Entwicklungsumgebung herunterladen kann, sagt, dass es etwas mit der IIS-Konfiguration oder vielleicht mit meinem Code sein könnte. Das PDF wird in der Tabelle ms sql server 2012 als varbinary gespeichert. Ich habe unten einen Code zur Verfügung gestellt, mit dem die Daten gelesen werden. Bitte lassen Sie mich wissen, wenn Sie weitere Informationen benötigen. Außerdem überprüfte ich die iis Protokolle und ich bekomme 200 Statuscodes für alles. Nichts fällt da drinnen auf.Fail Network Error Download PDF mit iis
if(Session["DetailID"] != null)
{
//get the file
DataTable dt = sp_Attachment_Download(lblAttachmentIDD.Text);
DataRow row = dt.Rows[0];
string name = (string)row["AFileName"];
string contentType = (string)row["AFileType"];
Byte[] data = (Byte[])row["AFile"];
/// Send the file to the browser
Response.AddHeader("Content-type", contentType);
Response.AddHeader("Content-Disposition", "attachment; filename=" + name);
Response.BinaryWrite(data);
Response.Flush();
Response.Close();
}
EDITED ---------- Ich verwende die Entwicklertools für Internet Explorer und Chrome und fand etwas Interessantes. Chrome gibt mir den folgenden Fehler, wenn ich auf den Link klicke:
IE gibt keinen Fehler, aber etwas hat meine Aufmerksamkeit erregt. Ich meine REQUEST Kopfzeile, ACCEPT enthält keine Anwendung/pdf und die RESPONSE Content-Type hat Anwendung/pdf. Könnte das etwas sein? Wie kann ich das ACCEPT so einstellen, dass es aspx-Seite application/pdf enthält?
Ich stieß auch auf ein ähnliches Problem, schlägt der Download in Chrome mit der Nachricht Failed - Network Error fehl. Aber ich bemerkte, dass das Problem bei den Protokollen lag, Chrome verwendete HTTP/2, während Firefox HTTP/1.1 verwendete. Hast du das beobachtet? – KiKMak