Установка
Добавьте Doconut в ваш проект .NET 6
Базовый просмотрщик Doconut для .NET 6 поставляется в виде одного пакета NuGet, который подключается к любому приложению ASP.NET Core. Дополнительные плагины используют отдельные пакеты. Эта страница устанавливает базовый пакет и регистрирует middleware — минимум, необходимый перед первым рендерингом.
Установите пакет
dotnet add package Doconut.NET6Команда без указания версии устанавливает последнюю стабильную версию. Чтобы точно воспроизвести текущий релиз 26.7.0, укажите версию в отдельном параметре:
dotnet add package Doconut.NET6 --version 26.7.0Doconut.NET6 — это идентификатор пакета. Суффикс .26.7.0 относится к загруженному файлу Doconut.NET6.26.7.0.nupkg и не является частью идентификатора.
Определите интеграцию перед обновлением
Идентификатор пакета Doconut.NET6 использовался как в классической, так и в текущей интеграции .NET 6. Не выбирайте документацию, ориентируясь только на название пакета:
DocImage.axd,new Viewer(_cache, _accessor, ...), синхронныйOpenDocument(...)и вручную скопированные скрипты просмотрщика указывают на классическую интеграцию;AddDoconut(),UseDoconutResources(), внедрённыйViewerиOpenDocumentAsync(...)указывают на текущую интеграцию, описанную здесь.
Переведённое руководство по классической настройке всё ещё доступно. Используйте руководство по миграции, чтобы перейти между поколениями; обычное обновление пакета не преобразует стартовый код, время жизни просмотрщика или ресурсы браузера автоматически.
Регистрация Doconut
AddDoconut() — единственная точка входа для регистрации; существует единственная перегрузка, и она подключает сервис Viewer, сервис лицензий и инфраструктуру рендеринга в контейнер DI.
Два вызова middleware завершают настройку, и их порядок имеет значение: UseDoconutResources() должен выполняться до UseDoconut(). UseDoconut() — терминальный middleware, поэтому вызов его первым приводит к тому, что каждый запрос к ресурсу /doconut-res никогда не попадает в обработчик ресурсов и получает 404. Также требуется подключение сессии — стандартная защита документов Doconut проверяет каждый запрос страницы против состояния сессии ASP.NET.
builder.Services.AddDoconut(options =>
{
options.LicensePath = "Doconut.Viewer.lic";
});
builder.Services.AddDistributedMemoryCache(); // состояние сессии требует кэш (MVC/Razor Pages уже добавляют его)
builder.Services.AddSession(); // защита документов Doconut использует состояние сессии ASP.NET
app.UseSession(); // вызовите UseSession() до UseDoconut()
app.UseDoconutResources(); // должен быть зарегистрирован до UseDoconut()
app.UseDoconut();Все параметры
DoconutOptions принимает следующие настраиваемые свойства. Каждое из них является необязательным — ниже указанные значения по умолчанию применяются, если свойство не задано.
| Свойство | По умолчанию | Описание |
|---|---|---|
ShowDoconutInfo | false | Когда true, запрос без token возвращает баннер версии вместо 404. Полезно для быстрой проверки; отключайте в продакшене. |
UnsafeMode | false | Когда true, пропускает проверку безопасности ASP.NET‑session при запросах страниц. Отключайте в продакшене. |
MiddlewarePath | "/doconut" | Координационное значение для конечной точки page-image. Оно проверяется, но само по себе не монтирует ветку; держите его согласованным с реальным сопоставлением UseDoconut() и клиентским BasePath. |
ResourcesPath | "/doconut-res" | Откуда обслуживаются встроенные ресурсы JS/CSS/изображения. |
LicensePath | "" (empty string) | Путь к файлу лицензии. Пустая строка означает переход к следующему источнику, затем авто‑поиск. |
LicenseContent | "" (empty string) | Сырой контент лицензии — из переменной окружения, менеджера секретов или базы данных. |
LicenseStream | null | Лицензия в виде потока, читается один раз при старте. |
ResetLicense | false | Зарезервированный флаг совместимости. Текущие сервисы .NET 6 читают лицензию во время AddDoconut(); перезапустите приложение после замены лицензии. |
Приоритет лицензий, когда задано более одного источника: LicenseStream превалирует над LicenseContent, который превалирует над LicensePath, который превалирует над авто‑поиском — см. Настройка лицензии.
builder.Services.AddDoconut(options =>
{
options.LicensePath = "Doconut.Viewer.lic";
options.MiddlewarePath = "/doconut"; // согласовать с сопоставлением приложения и клиентским BasePath
options.ResourcesPath = "/doconut-res"; // откуда обслуживаются JS/CSS/изображения просмотрщика
options.UnsafeMode = false; // сохранять безопасность сессии включённой
options.ShowDoconutInfo = false;
});Следующие шаги
- Быстрый старт — откройте ваш первый документ и отобразите его в браузере.
- Настройка лицензии — где Doconut ищет ваш файл лицензии.
Была ли эта страница полезной?