Zum Fußzeileninhalt springen
IRONPDF NUTZEN

PDF-Viewer für ASP.NET: Wie man PDFs in .NET 10 anzeigt

Um eine PDF-Ansicht in ASP.NET Core zu implementieren, verwenden Sie IronPDF, um PDFs aus HTML, URLs oder Razor-Ansichten zu generieren. Dienen Sie sie mit den richtigen Headern für die Inline-Anzeige im Browser, um eine reibungslose Dokumentenanzeige ohne externe Plugins oder Downloads zu ermöglichen.

Der Aufbau einer Webanwendung in .NET erfordert oft das direkte Anzeigen von PDF-Dokumenten im Browser. Egal ob Rechnungen, Berichte oder interaktive PDF-Formulare, Benutzer erwarten ein reibungsloses Dokumentanzeigeerlebnis ohne die Notwendigkeit von Adobe Acrobat Reader oder anderen externen Browserwerkzeugen.

In diesem Tutorial erfahren Sie, wie Sie eine PDF-Ansicht für ASP.NET und .NET Core mit IronPDF implementieren. Diese zuverlässige PDF-Anzeigesteuerung ermöglicht es Entwicklern, PDF-Dateien innerhalb von .NET-Anwendungen zu erstellen, darzustellen und anzuzeigen und bietet eine professionelle Lösung für die Handhabung geschäftskritischer Dokumente. Der hier beschriebene Ansatz funktioniert mit .NET 10 und allen früheren .NET Core-Versionen.

Wie funktioniert die PDF-Anzeige in ASP.NET Core?

Moderne Browser fungieren als integrierte PDF-Viewer. Wenn Sie eine PDF-Datei mit dem richtigen MIME-Typ (application/pdf) bereitstellen, zeigt der Browser sie automatisch inline an. Das bedeutet, Sie benötigen keine externen Plugins, um PDF-Dokumente anzusehen oder PDF-Dateien darzustellen. Der Schlüssel liegt darin, qualitativ hochwertige PDFs zu erzeugen und die korrekten Antwort-Header zu konfigurieren.

IronPDF ist eine häufig aktualisierte .NET PDF-Bibliothek, die sich durch das Erstellen von pixelgenauen PDF-Seiten aus HTML, Razor-Ansichten oder vorhandenen Dokumenten auszeichnet. Sein Chrome-basierter Rendering-Engine sorgt für eine genaue Unterstützung von CSS, JavaScript und Bildern und bietet den Nutzern ein Anzeigeerlebnis, das mit einem Desktop-PDF-Viewer vergleichbar ist. Sie können die vollständige Liste der Funktionen auf der IronPDF-Feature-Seite erkunden.

Wenn eine Anfrage Ihren ASP.NET Core-Controller erreicht, ist der Arbeitsablauf einfach: Generieren (oder Laden) Sie ein PDF mit IronPDF, setzen Sie den Content-Disposition-Antwort-Header auf inline, geben Sie den MIME-Typ als application/pdf an und geben Sie die Binärdaten zurück. Der Browser übernimmt das Rendering automatisch – es ist keine Einrichtung von JavaScript PDF.js erforderlich und es gibt keine Abhängigkeit von Browser-Erweiterungen.

Dieses Muster frühzeitig zu verstehen, spart Entwicklungszeit. Anstatt eine komplexe JavaScript-Viewer-Bibliothek zu integrieren, übertragen Sie die Renderarbeit an den Browser und verwenden IronPDF ausschließlich zur Erzeugung und Manipulation auf der Serverseite. Die ASP.NET Core-Dokumentation zu Dateiantworten erklärt den zugrundeliegenden FileResult-Typ, der in diesen Mustern verwendet wird.

Wie richten Sie ein ASP.NET Core-Projekt ein?

Beginnen Sie mit der Erstellung einer neuen ASP.NET Core MVC-Anwendung. Öffnen Sie ein Terminal und führen Sie aus:

dotnet new mvc -n PdfViewerApp
cd PdfViewerApp
dotnet new mvc -n PdfViewerApp
cd PdfViewerApp
SHELL

Dies erzeugt eine grundlegende .NET-Anwendung mit MVC-Unterstützung. Die MVC-Struktur gibt Ihnen Controller zur Handhabung von PDF-Generierungsanfragen und Ansichten zum Aufbau der Frontend-Benutzeroberfläche. Ein dedizierter PdfController hält die PDF-bezogene Logik organisiert und leicht wartbar, während die Anwendung wächst.

Wie installieren und konfigurieren Sie IronPDF?

Die Installation von IronPDF erfordert nur wenige Schritte. Verwenden Sie entweder die NuGet-Paket-Manager-Konsole in Visual Studio oder die .NET CLI:

# Package Manager Console (Visual Studio)
Install-Package IronPdf

# .NET CLI
dotnet add package IronPdf
# Package Manager Console (Visual Studio)
Install-Package IronPdf

# .NET CLI
dotnet add package IronPdf
SHELL

Konfigurieren Sie die Bibliothek dann in Program.cs:

using IronPdf;

// Set license key at application startup
IronPdf.License.LicenseKey = "YOUR-LICENSE-KEY";
using IronPdf;

// Set license key at application startup
IronPdf.License.LicenseKey = "YOUR-LICENSE-KEY";
$vbLabelText   $csharpLabel

Richten Sie Ihren Lizenzschlüssel in Program.cs ein, bevor Sie PDF-Operationen ausführen. Eine kostenlose Testlizenz ist für Entwicklung und Bewertung verfügbar. Die IronPDF-Dokumentation bietet zusätzliche Konfigurationsbeispiele für verschiedene Einsatzumgebungen, einschließlich Azure und Docker.

Wie generieren Sie PDFs zur Ansicht?

IronPDF ermöglicht es Ihnen, PDF-Dateien aus Roh-HTML-Strings, Live-Webseiten oder Razor-Ansichten zu erstellen. Das generierte PDF-Dokument kann dann mit nur wenigen Zeilen C#-Code inline angezeigt werden.

Dieser Ansatz vermeidet das Erzwungener-Download und gibt den Benutzern die Möglichkeit, PDFs direkt im Browser anzusehen, zu drucken, zu durchsuchen und zu speichern -- ohne ein zusätzliches Viewer-Element auf der Clientseite.

Wie erstellen Sie PDFs aus HTML-Strings?

Der einfachste Ansatz konvertiert einen HTML-String direkt in PDF. Verwenden Sie dieses Muster, um dynamische Inhalte wie Berichte oder Rechnungen zu erstellen:

using IronPdf;

var renderer = new ChromePdfRenderer();

string html = @"
    <html>
    <head>
        <style>
            body { font-family: Arial; padding: 20px; }
            h1 { color: #333; }
        </style>
    </head>
    <body>
        <h1>Sample PDF Document</h1>
        <p>This PDF was generated using IronPDF in ASP.NET Core.</p>
    </body>
    </html>";

var pdf = renderer.RenderHtmlAsPdf(html);

// Return PDF to browser for inline viewing
return File(pdf.BinaryData, "application/pdf");
using IronPdf;

var renderer = new ChromePdfRenderer();

string html = @"
    <html>
    <head>
        <style>
            body { font-family: Arial; padding: 20px; }
            h1 { color: #333; }
        </style>
    </head>
    <body>
        <h1>Sample PDF Document</h1>
        <p>This PDF was generated using IronPDF in ASP.NET Core.</p>
    </body>
    </html>";

var pdf = renderer.RenderHtmlAsPdf(html);

// Return PDF to browser for inline viewing
return File(pdf.BinaryData, "application/pdf");
$vbLabelText   $csharpLabel

Ein ChromePdfRenderer wird erstellt, der die Chromium-Engine für ein genaues Rendering verwendet. Das HTML (mit inline CSS) wird an RenderHtmlAsPdf übergeben und erzeugt ein PdfDocument. Die Rückgabe der Datei mit dem application/pdf MIME-Typ stellt sicher, dass der Browser sie inline anzeigt. Für einen tieferen Einblick in diese Umwandlungsmethode siehe den Leitfaden für HTML-String zu PDF.

Wie generieren Sie PDFs aus URLs?

Die Umwandlung vorhandener Webseiten in PDFs ist genauso einfach. Dies ist nützlich zur Archivierung von Live-Inhalten oder zur Erstellung von Schnappschüssen von Berichten, die als Webseiten veröffentlicht wurden:

using IronPdf;

var renderer = new ChromePdfRenderer();
renderer.RenderingOptions.EnableJavaScript = true;
renderer.RenderingOptions.WaitFor.JavaScript(3000);
renderer.RenderingOptions.CssMediaType = IronPdf.Rendering.PdfCssMediaType.Print;

var pdf = renderer.RenderUrlAsPdf("https://example.com/report");
Response.Headers.Add("Content-Disposition", "inline; filename=webpage.pdf");

return File(pdf.BinaryData, "application/pdf");
using IronPdf;

var renderer = new ChromePdfRenderer();
renderer.RenderingOptions.EnableJavaScript = true;
renderer.RenderingOptions.WaitFor.JavaScript(3000);
renderer.RenderingOptions.CssMediaType = IronPdf.Rendering.PdfCssMediaType.Print;

var pdf = renderer.RenderUrlAsPdf("https://example.com/report");
Response.Headers.Add("Content-Disposition", "inline; filename=webpage.pdf");

return File(pdf.BinaryData, "application/pdf");
$vbLabelText   $csharpLabel

Die RenderUrlAsPdf-Methode ruft die Seite ab, wendet Stile und Skripte an und erzeugt ein veredeltes PDF. Das Setzen des Content-Disposition-Headers auf inline lässt die Datei im PDF-Viewer des Browsers öffnen. Die JavaScript-Rendering-Optionen stellen sicher, dass dynamische Inhalte vor der Erfassung ordnungsgemäß geladen werden.

PDF-Viewer-Webanwendung zeigt IronPDF for .NET-Dokumentation mit Erzeugung aus HTML, Erzeugung aus URL und Druckschaltflächen oben

Wie können Sie Razor-Ansichten in PDFs umwandeln?

Razor-Ansichten sind ideale Vorlagen für strukturierte Dokumente wie Rechnungen, weil dieselbe Vorlage sowohl die Webseite als auch die PDF-Ausgabe bedienen kann. Rendern Sie die Ansicht in einen HTML-String und übergeben Sie sie dann an IronPDF:

using IronPdf;

// Render the Razor view to an HTML string first
var htmlContent = await RenderViewToString("Invoice", invoiceModel);

var renderer = new ChromePdfRenderer();
var pdf = renderer.RenderHtmlAsPdf(htmlContent);

return File(pdf.BinaryData, "application/pdf");
using IronPdf;

// Render the Razor view to an HTML string first
var htmlContent = await RenderViewToString("Invoice", invoiceModel);

var renderer = new ChromePdfRenderer();
var pdf = renderer.RenderHtmlAsPdf(htmlContent);

return File(pdf.BinaryData, "application/pdf");
$vbLabelText   $csharpLabel

Die Ansicht wird zunächst mithilfe einer Hilfsmethode in einen HTML-String gerendert und dann mit RenderHtmlAsPdf umgewandelt. Dieser Ansatz ermöglicht es Ihnen, Razor-Vorlagen sowohl für die Webanzeige als auch zur PDF-Erstellung wiederzuverwenden, wobei sichergestellt wird, dass der Output in beiden Formaten konsistent bleibt. Der HTML-zu-PDF-Leitfaden behandelt zusätzliche Integrationsmuster für Razor.

Wie zeigen Sie PDFs inline im Browser an?

Der Schlüssel zur Anzeige von PDFs inline (statt einen Download auszulösen) liegt im Setzen der richtigen Antwort-Header. Moderne Browser unterstützen die Inline-Anzeige von PDFs, wenn der Content-Typ und die Disposition korrekt konfiguriert sind.

Das Setzen von Content-Disposition: inline weist den Browser an, das PDF direkt darzustellen, während Content-Disposition: attachment einen Download-Dialog auslösen würde. Die Unterscheidung liegt in einer einzigen Header-Wertänderung, aber sie wirkt sich erheblich auf das Benutzererlebnis aus.

Sie können auch angezeigte Dokumente mit Kopfund Fußzeilen zur Seitennummerierung und zum Branding verbessern oder benutzerdefinierte Wasserzeichen hinzufügen, um Dokumente als Entwürfe oder vertraulich zu kennzeichnen.

Wie können Sie dynamisches PDF-Laden aktivieren?

Für Anwendungen, die zwischen mehreren Dokumenten wechseln müssen, ohne eine vollständige Seitenaktualisierung, verwenden Sie ein iframe, das mit Controller-Endpunkten kombiniert wird:

using IronPdf;
using Microsoft.AspNetCore.Mvc;

// Controller action to list available PDFs
[HttpGet]
public IActionResult GetPdfList()
{
    var pdfs = new List<object>
    {
        new { id = 1, name = "Report 1" },
        new { id = 2, name = "Report 2" }
    };
    return Json(pdfs);
}

// Controller action to generate and return a specific PDF
[HttpGet]
public IActionResult GetPdf(int id)
{
    var renderer = new ChromePdfRenderer();
    string html = $"<h1>Report {id}</h1><p>Content for report {id}.</p>";
    var pdf = renderer.RenderHtmlAsPdf(html);
    Response.Headers.Add("Content-Disposition", $"inline; filename=report-{id}.pdf");
    return File(pdf.BinaryData, "application/pdf");
}
using IronPdf;
using Microsoft.AspNetCore.Mvc;

// Controller action to list available PDFs
[HttpGet]
public IActionResult GetPdfList()
{
    var pdfs = new List<object>
    {
        new { id = 1, name = "Report 1" },
        new { id = 2, name = "Report 2" }
    };
    return Json(pdfs);
}

// Controller action to generate and return a specific PDF
[HttpGet]
public IActionResult GetPdf(int id)
{
    var renderer = new ChromePdfRenderer();
    string html = $"<h1>Report {id}</h1><p>Content for report {id}.</p>";
    var pdf = renderer.RenderHtmlAsPdf(html);
    Response.Headers.Add("Content-Disposition", $"inline; filename=report-{id}.pdf");
    return File(pdf.BinaryData, "application/pdf");
}
$vbLabelText   $csharpLabel

Aktualisieren Sie auf der Kundenseite die Quelle des iframes mit einem kurzen JavaScript-Snippet in Ihrer Razor-Ansicht, um verschiedene PDFs ohne Seitenneuladen zu laden. Der Controller generiert PDFs auf Abruf und hält die Antwortgröße vorhersehbar. Für große Dokumente kombinieren Sie dieses Muster mit IronPDFs Zusammenführungs- und Aufteilungsfunktionalität und reichen Dokumente in Abschnitten ein.

Screenshot der PdfViewerApp zeigt einen PDF-Viewer an, der den Text 'Hello World' mit Navigationssteuerungen und Aktionsschaltflächen für Erzeugen aus HTML, Erzeugen aus URL und Drucken

Wie handhaben Sie Bereitstellung und Performance?

IronPDF funktioniert mit ASP.NET, ASP.NET Core und Blazor Server-Projekten. Sie können auf Windows Server hosten, auf Azure bereitstellen oder mit Docker containerisieren. Da es vollständige Unterstützung für .NET 10 neben früheren Versionen bietet, fügt es sich in moderne und bestehende Anwendungen ein.

Wie bringen Sie es auf Azure bereit?

Bei der Bereitstellung auf Azure App Service funktioniert IronPDF mit minimaler zusätzlicher Konfiguration. Stellen Sie sicher, dass Ihr App Service-Plan mindestens auf B1 konfiguriert ist. IronPDF kümmert sich automatisch um die Bereitstellung des Chrome-Rendering-Engines.

Für containerisierte Bereitstellungen unter Linux fügen Sie Ihrem Dockerfile die erforderlichen Systemabhängigkeiten hinzu:

RUN apt-get update && apt-get install -y libgdiplus
RUN apt-get update && apt-get install -y libgdiplus
SHELL

Die IronPDF-Dokumentation behandelt plattformspezifische Linux-Anforderungen im Detail. Erwägen Sie die Verwendung von IronPDF Slim für kleinere Containerbildgrößen, wenn die vollständige Chrome-Rendering-Engine nicht benötigt wird.

Was sind die wichtigsten Performance-Überlegungen?

Die Leistung einer PDF-bereitstellenden Anwendung hängt davon ab, wie häufig PDFs generiert werden und wie groß sie sind. Die folgenden Praktiken gelten für die meisten Produktbereitstellungen:

  • Cachen Sie generierte PDFs, wenn sich der zugrunde liegende Inhalt nicht häufig ändert, mithilfe von Speicherströmen oder einem verteilten Cache
  • Verwenden Sie asynchrone Controlleraktionen, um Threads während der PDF-Erzeugung nicht zu blockieren
  • Setzen Sie geeignete Rendering-Timeouts für komplexe HTML-Seiten mit umfangreichem JavaScript
  • Wenden Sie Wasserzeichen und Kompression an, um Dateigrößen vor der Bereitstellung zu reduzieren
  • Aktivieren Sie die PDF-zu-Bild-Konvertierung, um Vorschaubilder zu erzeugen, anstatt vollständige PDFs in Dokumentlisten zu laden
  • Verwenden Sie Textextraktion, um serverseitige Suchindizes aufzubauen, anstatt sich auf die integrierte PDF-Suche des Browsers zu verlassen

Wie beheben Sie häufige PDF-Anzeigeprobleme?

Warum wird das PDF heruntergeladen statt angezeigt?

Wenn PDFs statt inline angezeigt werden heruntergeladen, überprüfen Sie, dass die Antwort-Header korrekt gesetzt sind. Stellen Sie sicher, dass der MIME-Typ genau application/pdf ist und dass Content-Disposition auf inline und nicht auf attachment gesetzt ist:

Response.Headers.Add("Content-Disposition", "inline; filename=document.pdf");
return File(pdf.BinaryData, "application/pdf");
Response.Headers.Add("Content-Disposition", "inline; filename=document.pdf");
return File(pdf.BinaryData, "application/pdf");
$vbLabelText   $csharpLabel

Einige Proxies und Lastverteiler entfernen oder ändern Antwort-Header – bestätigen Sie mithilfe von Entwickler-Tools, dass die Header den Browser erreichen. Für Cross-Origin-Szenarien fügen Sie in Program.cs CORS-Header hinzu, anstatt bei einzelnen Antworten, um die Konfiguration zentralisiert zu halten. Wenn die PDFs sensible Daten enthalten, wenden Sie PDF-Signierung und Passwortschutz an, anstatt sich ausschließlich auf CORS-Beschränkungen zu verlassen.

Wie gehen Sie mit großen PDF-Dateien um?

Für große Dokumente reduziert Streaming den Speicherbedarf des Servers. Verwenden Sie einen FileStreamResult anstelle der Rückgabe des rohen Byte-Arrays:

using IronPdf;

var renderer = new ChromePdfRenderer();
var pdf = renderer.RenderHtmlAsPdf(largeHtmlContent);

var stream = new MemoryStream(pdf.BinaryData);
return new FileStreamResult(stream, "application/pdf");
using IronPdf;

var renderer = new ChromePdfRenderer();
var pdf = renderer.RenderHtmlAsPdf(largeHtmlContent);

var stream = new MemoryStream(pdf.BinaryData);
return new FileStreamResult(stream, "application/pdf");
$vbLabelText   $csharpLabel

Für sehr große Dokumente erwägen Sie, sie in Abschnitte mithilfe von IronPDFs Zusammenführungs- und Aufteilungsfunktionalität aufzuteilen und Paginierung in der Benutzeroberfläche zu implementieren. Dies hält einzelne PDF-Antworten klein und schnell zu laden. Microsofts ASP.NET Core-Anleitung für große Dateien behandelt auch Pufferungsstrategien, die für die PDF-Bereitstellung relevant sind.

Wie gehen Sie weiter mit IronPDF?

Der Aufbau eines PDF-Viewers in ASP.NET Core erfordert keine komplexen Drittanbieter-Viewer-Bibliotheken. Durch die Kombination von IronPDFs serverseitigem Rendering-Engine mit der nativen PDF-Unterstützung des Browsers erhalten Sie eine professionelle Dokumentinfrastruktur, die gut skaliert und minimale clientseitige Einrichtung erfordert. Die IronPDF-Startseite bietet einen Überblick über die gesamte Bibliothek und Einstiegsmöglichkeiten.

Von hier aus können Sie die Implementierung in mehrere Richtungen erweitern:

  • Fügen Sie Wasserzeichen hinzu, um vertrauliche Dokumente zu kennzeichnen
  • Implementieren Sie digitale Signaturen für rechtlich verbindliche Outputs
  • Arbeiten Sie mit PDF-Formularen, um Benutzereingaben zu sammeln und ausgefüllte PDFs zu erzeugen
  • Fügen Sie Kopfund Fußzeilen mit Seitenzahlen und Branding hinzu
  • Verwenden Sie Textextraktion, um serverseitige Suche über den Dokumentinhalt zu ermöglichen
  • Konvertieren Sie PDF zu Bildern, um Vorschauthumbnails zu erzeugen

Für die vollständige API-Referenz besuchen Sie die IronPDF-Dokumentation. Um gleich heute loszulegen, erhalten Sie eine kostenlose Testversion von IronPDF – keine Kreditkarte erforderlich.

Starten Sie jetzt mit IronPDF.
green arrow pointer

Häufig gestellte Fragen

Welche ist die beste Methode, um PDF-Dokumente in einer ASP.NET-Anwendung anzuzeigen?

Die Verwendung von IronPDF ermöglicht es Entwicklern, PDF-Dokumente direkt im Browser innerhalb einer ASP.NET-Anwendung leicht darzustellen und bietet eine nahtlose Benutzererfahrung ohne den Bedarf an Drittanbieter-Tools wie Adobe Acrobat Reader.

Kann IronPDF zur Verbesserung der PDF-Anzeige in Webanwendungen verwendet werden?

Ja, IronPDF ist dafür ausgelegt, die PDF-Anzeige zu verbessern, indem es eine reibungslose Integration in Webanwendungen ermöglicht, sodass Benutzer PDF-Dokumente mühelos und effizient anzeigen können.

Benötige ich zusätzliche Tools, um PDFs mit IronPDF in ASP.NET anzuzeigen?

Nein, IronPDF beseitigt den Bedarf an zusätzlichen Tools wie Adobe Acrobat Reader und bietet eine integrierte Lösung zur Anzeige von PDFs direkt in ASP.NET-Anwendungen.

Wie kann ich einen PDF-Viewer in meiner .NET-Webanwendung implementieren?

Indem Sie IronPDF in Ihre .NET-Webanwendung integrieren, können Sie einen leistungsstarken PDF-Viewer implementieren, der verschiedene PDF-Funktionen unterstützt und ein benutzerfreundliches Interface bietet.

Warum sollte ich IronPDF für die PDF-Anzeige in ASP.NET verwenden?

IronPDF bietet eine zuverlässige und effiziente Lösung für die PDF-Anzeige in ASP.NET-Anwendungen und ermöglicht es Entwicklern, den Benutzern eine nahtlose Erfahrung ohne Abhängigkeit von externen Plugins zu bieten.

Ist es möglich, interaktive PDF-Formulare mit IronPDF anzuzeigen?

Ja, IronPDF unterstützt die Anzeige interaktiver PDF-Formulare und ermöglicht es Benutzern, PDF-Dokumente direkt im Browser auszufüllen und damit zu interagieren.

Welche Arten von PDF-Dokumenten können mit IronPDF angezeigt werden?

IronPDF kann verschiedene Arten von PDF-Dokumenten wie Rechnungen, Berichte und interaktive Formulare verarbeiten, was es zu einem vielseitigen Werkzeug für jede ASP.NET-Anwendung macht.

Unterstützt IronPDF for .NET 10 für die PDF-Erstellung und -Anzeige?

Ja. IronPDF unterstützt .NET 10 vollständig sowie frühere Versionen wie .NET 9, 8, 7, 6 und .NET Core und Framework. Das bedeutet, dass Sie IronPDF in modernen .NET 10 ASP.NET- oder Blazor-Anwendungen verwenden können, um PDFs zu generieren, bereitzustellen und direkt im Browser anzuzeigen. (ironpdf.com)

Curtis Chau
Technischer Autor

Curtis Chau hat einen Bachelor-Abschluss in Informatik von der Carleton University und ist spezialisiert auf Frontend-Entwicklung mit Expertise in Node.js, TypeScript, JavaScript und React. Leidenschaftlich widmet er sich der Erstellung intuitiver und ästhetisch ansprechender Benutzerschnittstellen und arbeitet gerne mit modernen Frameworks sowie der Erstellung gut strukturierter, optisch ansprechender ...

Weiterlesen

Iron Support Team

We're online 24 hours, 5 days a week.
Chat
Email
Call Me