Instalacja
Dodaj Doconut do swojego projektu .NET 6
Podstawowa przeglądarka Doconut dla .NET 6 jest dostarczana jako pojedynczy pakiet NuGet, który integruje się z dowolną aplikacją ASP.NET Core. Opcjonalne wtyczki używają oddzielnych pakietów. Ta strona instaluję podstawowy pakiet i rejestruje middleware — minimalne wymagania przed pierwszym renderowaniem.
Zainstaluj pakiet
dotnet add package Doconut.NET6Polecenie bez wersji instaluje najnowsze stabilne wydanie. Aby dokładnie odtworzyć bieżące wydanie 26.7.0, przekaż wersję jako oddzielną opcję:
dotnet add package Doconut.NET6 --version 26.7.0Doconut.NET6 jest identyfikatorem pakietu. Przyrostek .26.7.0 należy do pobranego pliku Doconut.NET6.26.7.0.nupkg i nie jest częścią identyfikatora.
Zidentyfikuj integrację przed aktualizacją
Identyfikator pakietu Doconut.NET6 był używany zarówno w klasycznej, jak i bieżącej integracji .NET 6. Nie wybieraj dokumentacji wyłącznie na podstawie nazwy pakietu:
DocImage.axd,new Viewer(_cache, _accessor, ...), synchronousOpenDocument(...)i ręcznie skopiowane skrypty przeglądarki identyfikują klasyczną integrację;AddDoconut(),UseDoconutResources(), wstrzykniętyVieweriOpenDocumentAsync(...)identyfikują bieżącą integrację opisaną tutaj.
Przetłumaczony klasyczny podręcznik konfiguracji jest nadal dostępny. Skorzystaj z przewodnika migracji, aby zmienić generacje; zwykła aktualizacja pakietu nie konwertuje automatycznie uruchamiania, czasu życia przeglądarki ani zasobów przeglądarki.
Zarejestruj Doconut
AddDoconut() jest jedynym punktem wejścia rejestracji — istnieje pojedyncze przeciążenie, które 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 być uruchomione przed UseDoconut(). UseDoconut() jest middleware terminalnym, więc wywołanie go jako pierwszego powoduje, że każde żądanie 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.
builder.Services.AddDoconut(options =>
{
options.LicensePath = "Doconut.Viewer.lic";
});
builder.Services.AddDistributedMemoryCache(); // stan sesji wymaga pamięci podręcznej (MVC/Razor Pages już ją dodają)
builder.Services.AddSession(); // zabezpieczenie dokumentu Doconut opiera się na stanie sesji ASP.NET
app.UseSession(); // wywołaj UseSession() przed UseDoconut()
app.UseDoconutResources(); // musi być zarejestrowane przed 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ślnie | Opis |
|---|---|---|
ShowDoconutInfo | false | Gdy true, żądanie bez token zwraca baner wersji zamiast 404. Przydatne jako szybka weryfikacja; wyłącz w produkcji. |
UnsafeMode | false | Gdy 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 gałęzi samodzielnie; utrzymuj ją zgodną z rzeczywistym mapowaniem UseDoconut() oraz BasePath klienta. |
ResourcesPath | "/doconut-res" | Skąd serwowane są osadzone zasoby JS/CSS/obrazy. |
LicensePath | "" (empty string) | Ścieżka do pliku licencji. Pusty oznacza przejście do następnego źródła, a następnie automatyczne wyszukiwanie. |
LicenseContent | "" (empty string) | Surowa zawartość licencji — z zmiennej środowiskowej, menedżera sekretów lub bazy danych. |
LicenseStream | null | Licencja jako strumień, odczytywana raz przy uruchomieniu. |
ResetLicense | false | Zarezerwowany znacznik kompatybilności. Bieżące usługi .NET 6 odczytują licencję podczas AddDoconut(); uruchom ponownie 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.
builder.Services.AddDoconut(options =>
{
options.LicensePath = "Doconut.Viewer.lic";
options.MiddlewarePath = "/doconut"; // koordynuj z mapowaniem aplikacji i BasePath klienta
options.ResourcesPath = "/doconut-res"; // skąd serwowane są zasoby JS/CSS/obrazy przeglądarki
options.UnsafeMode = false; // utrzymaj bezpieczeństwo sesji
options.ShowDoconutInfo = false;
});Kolejne kroki
- Szybki start — otwórz swój pierwszy dokument i wyświetl go w przeglądarce.
- Konfiguracja licencji — gdzie Doconut szuka pliku licencji.
Czy ta strona była pomocna?