Instalación

Agregar Doconut a tu proyecto .NET 6

El visor base Doconut para .NET 6 se entrega como un paquete NuGet que se integra en cualquier aplicación ASP.NET Core. Los complementos opcionales utilizan paquetes separados. Esta página instala el paquete base y registra el middleware — lo mínimo necesario antes de tu primera renderización.

Instalar el paquete

bash
dotnet add package Doconut.NET6

El comando sin versión instala la última versión estable. Para reproducir exactamente la versión actual 26.7.0, pasa la versión como una opción separada:

bash
dotnet add package Doconut.NET6 --version 26.7.0

Doconut.NET6 es el ID del paquete. El sufijo .26.7.0 pertenece al nombre de archivo descargado Doconut.NET6.26.7.0.nupkg y no forma parte del ID.

Identificar la integración antes de actualizar

El ID del paquete Doconut.NET6 se ha utilizado tanto en la integración clásica como en la actual de .NET 6. No selecciones la documentación solo por el nombre del paquete:

  • DocImage.axd, new Viewer(_cache, _accessor, ...), OpenDocument(...) síncrono y scripts del visor copiados manualmente identifican la integración clásica;
  • AddDoconut(), UseDoconutResources(), un Viewer inyectado y OpenDocumentAsync(...) identifican la integración actual documentada aquí.

El manual de configuración clásica traducido sigue disponible. Usa la guía de migración para cambiar de generación; una actualización normal del paquete no convierte automáticamente el inicio, la vida útil del visor o los recursos del navegador.

Registrar Doconut

AddDoconut() es el único punto de entrada de registro — hay una única sobrecarga, y conecta el servicio Viewer, el servicio de licencia y la infraestructura de renderizado al contenedor DI.

Dos llamadas a middleware completan la configuración, y su orden importa: UseDoconutResources() debe ejecutarse antes de UseDoconut(). UseDoconut() es middleware terminal, por lo que llamarlo primero hace que cualquier solicitud a un recurso /doconut-res nunca llegue al manejador de recursos y devuelva 404. También se requiere el cableado de sesión — la seguridad de documentos predeterminada de Doconut valida cada solicitud de página contra el estado de sesión de 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();

Todas las opciones

DoconutOptions acepta el siguiente conjunto de propiedades configurables. Cada una es opcional — los valores predeterminados a continuación se aplican cuando una propiedad queda sin establecer.

PropiedadValor predeterminadoDescripción
ShowDoconutInfofalseCuando es true, una solicitud sin token devuelve una barra de versión en lugar de un 404. Útil como verificación rápida; desactívalo en producción.
UnsafeModefalseCuando es true, omite la verificación de seguridad de la sesión ASP.NET en las solicitudes de página. Desactívalo en producción.
MiddlewarePath"/doconut"Valor de coordinación para el endpoint de página‑imagen. Se valida, pero no monta una rama por sí mismo; mantenlo alineado con el mapeo real de UseDoconut() y el BasePath del cliente.
ResourcesPath"/doconut-res"Desde donde se sirven los recursos incrustados de JS/CSS/imagen.
LicensePath"" (cadena vacía)Ruta al archivo de licencia. Vacío significa pasar al siguiente origen, luego búsqueda automática.
LicenseContent"" (cadena vacía)Contenido bruto de la licencia — desde una variable de entorno, un gestor de secretos o una base de datos.
LicenseStreamnullLicencia como flujo, leída una vez al iniciar.
ResetLicensefalseBandera de compatibilidad reservada. Los servicios actuales de .NET 6 leen la licencia durante AddDoconut(); reinicia la aplicación después de reemplazar una licencia.

Prioridad de licencia cuando se establece más de una fuente: LicenseStream supera a LicenseContent, que supera a LicensePath, que supera a la búsqueda automática — ver Configuración de licencia.

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

Próximos pasos

¿Fue útil esta página?