PDF-Dokument in aspx-Seite öffnen/anzeigen

02/12/2009 - 16:52 von M.Erlinger | Report spam
Hallo

ich hàtte 2 Fragen zum Öffnen/Anzeigen eines PDF-Dokumentes in einer
ASP.Net-Anwendung:
Ich habe eine eigene aspx-Seite, mit der ich im Page-Load die Daten
aus einer Datenbank-Tabelle hole; in einer Image-Spalte wàre das PDF-
Dokument, und anschließend soll dieses hier dargestellt werden.
Response.Buffer = true;
Response.AddHeader("Content-Disposition",
"attachment;filename=" + sName);
Response.ContentType = "application/pdf";
Response.BinaryWrite(dbData);
Response.Flush();

1) das PDF-Dokument kommt aus einer Datenbank-Image-Spalte - muss ich
nach dem Einlesen dieser Spalte in ein Byte[]-Objekt, dies als PDF-
Datei zwischenspeichern, oder gibt es auch noch eine andere
Möglichkeit das Dokument darzustellen (via MemoryStream - oder so) ??
2) ich hàtte mir vorgestellt, dass das PDF-Dokument in dieser aspx-
Seite angzeigt wird (Öffnen als PopUp-Seite); derzeit wird aber immer
der Dialog vom AcrobatReader geöffnet (mit der Frage ob ich die Datei
anzeigen möchte) - und anschließend öffnet sich immer der Acrobat-
Reader .. wie muss ich dieses Problem angehen ??

Kann mir bitte jemand einen Rat geben ?!
Danke schon mal & Grüsse
Michael
 

Lesen sie die antworten

#1 Karsten Samaschke
02/12/2009 - 18:03 | Warnen spam
Am 02.12.09 16:52, schrieb M.Erlinger:

1) das PDF-Dokument kommt aus einer Datenbank-Image-Spalte - muss ich
nach dem Einlesen dieser Spalte in ein Byte[]-Objekt, dies als PDF-
Datei zwischenspeichern, oder gibt es auch noch eine andere
Möglichkeit das Dokument darzustellen (via MemoryStream - oder so) ??



Ja, MemoryStream wàre voll und ganz perfekt dafür:

// In MemoryStream einlesen
using(MemoryStream ms = new MemoryStream())
{
ms.Write(<Daten>, 0, <Daten>.Length);

// MemoryStream zurücksetzen, danach kann daraus gelesen werden
ms.Seek(0, SeekOrigin.Begin);
Response.BinaryWrite(ms.ToArray());
}

2) ich hàtte mir vorgestellt, dass das PDF-Dokument in dieser aspx-
Seite angzeigt wird (Öffnen als PopUp-Seite); derzeit wird aber immer
der Dialog vom AcrobatReader geöffnet (mit der Frage ob ich die Datei
anzeigen möchte) - und anschließend öffnet sich immer der Acrobat-
Reader .. wie muss ich dieses Problem angehen ??



Probier es mal mit der ContentDisposition "inline" statt "attachment".


Mit freundlichen Gruessen / Best regards,

Karsten Samaschke
IT-Development, IT-Training, IT-Coaching

Nerd: http://www.aspextra.de
Blog: http://karsan.de
Family: http://www.familyblogger.de
Community: http://www.aspnetzone.de

Sent via MacBook Pro / OS X 10.6 (Snow Leopard)

Ähnliche fragen