Instalacja

Dodaj Doconut do swojego projektu .NET 8

Podstawowa przeglądarka Doconut dla .NET 8 jest dostarczana jako pojedynczy pakiet NuGet, który integruje się z dowolną aplikacją ASP.NET Core. Opcjonalne wtyczki korzystają z oddzielnych pakietów. Ta strona instaluje podstawowy pakiet i rejestruje middleware — minimalny zestaw niezbędny przed pierwszym renderowaniem.

Zainstaluj pakiet

bash
dotnet add package Doconut.NET8

Polecenie bez wersji instaluje najnowsze stabilne wydanie. Aby dokładnie odtworzyć bieżące wydanie 26.7.0, przekaż wersję jako oddzielną opcję:

bash
dotnet add package Doconut.NET8 --version 26.7.0

Doconut.NET8 jest identyfikatorem pakietu. Suffix .26.7.0 należy do pobranego pliku Doconut.NET8.26.7.0.nupkg i nie jest częścią identyfikatora.

Zarejestruj Doconut

AddDoconut() jest jedynym punktem wejścia rejestracji — istnieje tylko jedna przeciążenie i podłącza usługę Viewer, usługę licencji oraz infrastrukturę renderowania do kontenera DI.

Dwa wywołania middleware kończą konfigurację i ich kolejność ma znaczenie: UseDoconutResources() musi zostać wywołane przed UseDoconut(). UseDoconut() jest middleware terminalnym, więc wywołanie go najpierw powoduje, że każde żądanie do zasobu /doconut-res nigdy nie dociera do obsługi zasobów i zwraca 404. Połączenie sesji jest również wymagane — domyślne zabezpieczenie dokumentu Doconut weryfikuje każde żądanie strony względem stanu sesji ASP.NET.

csharp
builder.Services.AddDoconut(options =>
{
    options.LicensePath = "Doconut.Viewer.lic";
});
builder.Services.AddSession(); // Doconut document security rides on ASP.NET session state

app.UseSession();          // call UseSession() before UseDoconut()
app.UseDoconutResources(); // must be registered before UseDoconut()
app.UseDoconut();

Wszystkie opcje

DoconutOptions przyjmuje następujące konfigurowalne właściwości. Każda z nich jest opcjonalna — poniższe wartości domyślne mają zastosowanie, gdy właściwość nie zostanie ustawiona.

WłaściwośćDomyślnieOpis
ShowDoconutInfofalseGdy true, żądanie bez token zwraca baner wersji zamiast 404. Przydatne jako szybka kontrola; wyłącz w produkcji.
UnsafeModefalseGdy true, pomija sprawdzanie bezpieczeństwa sesji ASP.NET przy żądaniach stron. Wyłącz w produkcji.
MiddlewarePath"/doconut"Wartość koordynująca dla punktu końcowego strony-obrazka. Jest walidowana, ale nie montuje własnej gałęzi; utrzymuj ją zgodnie z rzeczywistym mapowaniem UseDoconut() i BasePath klienta.
ResourcesPath"/doconut-res"Miejsce, z którego serwowane są osadzone zasoby JS/CSS/obrazki.
LicensePath"" (empty string)Ścieżka do pliku licencji. Pusty ciąg oznacza przejście do kolejnego źródła, a następnie automatyczne wyszukiwanie.
LicenseContent"" (empty string)Surowa zawartość licencji — z zmiennej środowiskowej, menedżera tajemnic lub bazy danych.
LicenseStreamnullLicencja jako strumień, odczytywana raz przy starcie.
ResetLicensefalseZarezerwowana flaga kompatybilności. Aktualne usługi .NET 8 odczytują licencję podczas AddDoconut(); zrestartuj aplikację po wymianie licencji.

Priorytet licencji, gdy ustawiono więcej niż jedno źródło: LicenseStream ma pierwszeństwo przed LicenseContent, które ma pierwszeństwo przed LicensePath, które ma pierwszeństwo przed automatycznym wyszukiwaniem — zobacz Konfiguracja licencji.

csharp
builder.Services.AddDoconut(options =>
{
    options.LicensePath     = "Doconut.Viewer.lic";
    options.MiddlewarePath  = "/doconut";     // coordinate with app mapping and client BasePath
    options.ResourcesPath   = "/doconut-res"; // where the viewer's JS/CSS/images are served from
    options.UnsafeMode      = false;          // keep session security on
    options.ShowDoconutInfo = false;
});

Kolejne kroki

Czy ta strona była pomocna?