Встановлення

Додайте Doconut до вашого проєкту .NET 8

Базовий переглядач Doconut для .NET 8 поставляється як один пакет NuGet, який підключається до будь‑якого застосунку ASP.NET Core. Додаткові плагіни використовують окремі пакети. На цій сторінці встановлюється базовий пакет і реєструється проміжне ПЗ — мінімум, необхідний перед вашим першим рендерингом.

Встановіть пакет

bash
dotnet add package Doconut.NET8

Команда без вказання версії встановлює останній стабільний реліз. Щоб точно відтворити поточний реліз 26.7.0, передайте версію як окрему опцію:

bash
dotnet add package Doconut.NET8 --version 26.7.0

Doconut.NET8 — це ідентифікатор пакету. Суфікс .26.7.0 належить завантаженому файлу Doconut.NET8.26.7.0.nupkg і не є частиною ідентифікатора.

Зареєструйте Doconut

AddDoconut() — єдина точка входу реєстрації; існує лише один перегрузок, і вона підключає сервіс Viewer, сервіс ліцензування та інфраструктуру рендерингу до контейнера DI.

Два виклики проміжного ПЗ завершують налаштування, і їх порядок має значення: UseDoconutResources() має виконуватись до UseDoconut(). UseDoconut() — термінальний проміжний ПЗ, тому його виклик першим призведе до того, що кожен запит до ресурсу /doconut-res ніколи не дійде до обробника ресурсів і отримає 404. Підключення сесії також необхідне — стандартна безпека документів Doconut перевіряє кожен запит сторінки проти стану сесії 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();

Усі параметри

DoconutOptions приймає наступні налаштовувані властивості. Кожна з них є необов’язковою — нижче наведені значення за замовчуванням застосовуються, якщо властивість залишена без значення.

ВластивістьЗа замовчуваннямОпис
ShowDoconutInfofalseКоли true, запит без token повертає банер версії замість 404. Корисно для швидкої перевірки; вимикайте у продакшн.
UnsafeModefalseКоли true, пропускає перевірку безпеки ASP.NET‑session при запитах сторінок. Вимикайте у продакшн.
MiddlewarePath"/doconut"Координаційне значення для кінцевої точки сторінка‑зображення. Воно валідовано, але самостійно не монтує гілку; тримайте його узгодженим з фактичним мапінгом UseDoconut() та клієнтським BasePath.
ResourcesPath"/doconut-res"Шлях, з якого подаються вбудовані ресурси JS/CSS/зображення.
LicensePath"" (empty string)Шлях до файлу ліцензії. Порожнє значення означає переходити до наступного джерела, а потім виконувати авто‑пошук.
LicenseContent"" (empty string)Необроблений вміст ліцензії — з змінної середовища, менеджера секретів або бази даних.
LicenseStreamnullЛіцензія у вигляді потоку, читається один раз під час запуску.
ResetLicensefalseЗарезервований прапорець сумісності. Поточні сервіси .NET 8 читають ліцензію під час AddDoconut(); перезапустіть застосунок після заміни ліцензії.

Пріоритет ліцензії, коли задано більше одного джерела: LicenseStream переважає LicenseContent, який переважає LicensePath, який переважає авто‑пошук — див. Налаштування ліцензії.

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;
});

Наступні кроки

Чи була ця сторінка корисною?