Installation

Fügen Sie Doconut zu Ihrem .NET 8-Projekt hinzu

Der Basis‑Doconut‑Viewer für .NET 8 wird als ein NuGet‑Paket bereitgestellt, das in jede ASP.NET‑Core‑Anwendung integriert werden kann. Optionale Plugins verwenden separate Pakete. Diese Seite installiert das Basis‑Paket und registriert die Middleware — das Minimum, das vor Ihrer ersten Darstellung erforderlich ist.

Paket installieren

bash
dotnet add package Doconut.NET8

Der unveröffentlichte Befehl installiert die neueste stabile Version. Um die aktuelle Version 26.7.0 exakt nachzubilden, übergeben Sie die Versionsnummer als separate Option:

bash
dotnet add package Doconut.NET8 --version 26.7.0

Doconut.NET8 ist die Paket‑ID. Der .26.7.0‑Suffix gehört zum heruntergeladenen Doconut.NET8.26.7.0.nupkg‑Dateinamen und ist nicht Teil der ID.

Doconut registrieren

AddDoconut() ist der einzige Registrierungseintrag — es gibt nur eine Überladung, und sie verbindet den Viewer‑Dienst, den Lizenzdienst und die Rendering‑Infrastruktur mit dem DI‑Container.

Zwei Middleware‑Aufrufe vervollständigen die Einrichtung, und ihre Reihenfolge ist wichtig: UseDoconutResources() muss vor UseDoconut() ausgeführt werden. UseDoconut() ist terminale Middleware, sodass ein Aufruf zu Beginn bedeutet, dass jede Anfrage an ein /doconut-res‑Asset nie den Ressourcen‑Handler erreicht und mit 404 beantwortet wird. Das Session‑Wiring ist ebenfalls erforderlich — Documents Standard‑Dokumentensicherheit prüft jede Seitenanfrage gegen den ASP.NET‑Session‑State.

csharp
builder.Services.AddDoconut(options =>
{
    options.LicensePath = "Doconut.Viewer.lic";
});
builder.Services.AddDistributedMemoryCache(); // Sitzungszustand benötigt einen Cache (MVC/Razor Pages fügen bereits einen hinzu)
builder.Services.AddSession(); // Doconut-Dokumentsicherheit beruht auf dem ASP.NET-Sitzungszustand

app.UseSession();          // Rufen Sie UseSession() vor UseDoconut() auf
app.UseDoconutResources(); // Muss vor UseDoconut() registriert werden
app.UseDoconut();

Alle Optionen

DoconutOptions akzeptiert die folgenden einstellbaren Eigenschaften. Jede ist optional — die untenstehenden Vorgaben gelten, wenn eine Eigenschaft nicht gesetzt wird.

EigenschaftStandardBeschreibung
ShowDoconutInfofalseWenn true, gibt eine Anfrage ohne token ein Versionsbanner statt eines 404 zurück. Nützlich als Schnelltest; in der Produktion deaktivieren.
UnsafeModefalseWenn true, wird die ASP.NET‑Session‑Sicherheitsprüfung bei Seitenanfragen übersprungen. In der Produktion deaktivieren.
MiddlewarePath"/doconut"Koordinationswert für den page‑image‑Endpunkt. Er wird validiert, mountet jedoch keinen eigenen Zweig; halten Sie ihn abgestimmt mit der tatsächlichen UseDoconut()‑Zuordnung und dem Client‑BasePath.
ResourcesPath"/doconut-res"Wo die eingebetteten JS/CSS/Image‑Ressourcen bereitgestellt werden.
LicensePath"" (empty string)Pfad zur Lizenzdatei. Leer bedeutet, dass zur nächsten Quelle weitergegangen wird, dann automatische Suche.
LicenseContent"" (empty string)Roh‑Lizenzinhalt — aus einer Umgebungsvariablen, einem Secret‑Manager oder einer Datenbank.
LicenseStreamnullLizenz als Stream, einmal beim Starten gelesen.
ResetLicensefalseReserviertes Kompatibilitäts‑Flag. Die aktuellen .NET 8‑Dienste lesen die Lizenz während AddDoconut(); starten Sie die Anwendung neu, nachdem Sie eine Lizenz ausgetauscht haben.

Lizenz‑Priorität, wenn mehr als eine Quelle gesetzt ist: LicenseStream hat Vorrang vor LicenseContent, vor LicensePath und vor der automatischen Suche — siehe License Setup.

csharp
builder.Services.AddDoconut(options =>
{
    options.LicensePath     = "Doconut.Viewer.lic";
    options.MiddlewarePath  = "/doconut";     // Koordinieren Sie sich mit dem App-Mapping und dem Client-BasePath
    options.ResourcesPath   = "/doconut-res"; // Wo die JS/CSS/Bilder des Viewers bereitgestellt werden
    options.UnsafeMode      = false;          // Session-Sicherheit aktiv halten
    options.ShowDoconutInfo = false;
});

Nächste Schritte

  • Schnellstart — öffnen Sie Ihr erstes Dokument und rendern Sie es im Browser.
  • Lizenzsetup — wo Doconut nach Ihrer Lizenzdatei sucht.

War diese Seite hilfreich?