Instalação

Adicione Doconut ao seu projeto .NET 8

O visualizador base Doconut para .NET 8 é distribuído como um único pacote NuGet que se integra a qualquer aplicação ASP.NET Core. Plugins opcionais utilizam pacotes separados. Esta página instala o pacote base e registra o middleware — o mínimo necessário antes da sua primeira renderização.

Instalar o pacote

bash
dotnet add package Doconut.NET8

O comando sem versão instala a versão estável mais recente. Para reproduzir exatamente a versão atual 26.7.0, passe a versão como uma opção separada:

bash
dotnet add package Doconut.NET8 --version 26.7.0

Doconut.NET8 é o ID do pacote. O sufixo .26.7.0 pertence ao nome do arquivo baixado Doconut.NET8.26.7.0.nupkg e não faz parte do ID.

Registrar Doconut

AddDoconut() é o único ponto de entrada para registro — há uma única sobrecarga, e ele conecta o serviço Viewer, o serviço de licença e a infraestrutura de renderização ao contêiner DI.

Dois chamados de middleware completam a configuração, e a ordem deles importa: UseDoconutResources() deve ser executado antes de UseDoconut(). UseDoconut() é middleware terminal, portanto chamá‑lo primeiro faz com que toda requisição a um recurso /doconut-res nunca chegue ao manipulador de recursos e resulte em 404. A conexão da sessão também é necessária — a segurança de documentos padrão do Doconut valida cada requisição de página contra o estado de sessão do 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 as opções

DoconutOptions aceita as seguintes propriedades configuráveis. Cada uma é opcional — os valores padrão abaixo se aplicam quando uma propriedade não é definida.

PropertyDefaultDescription
ShowDoconutInfofalseQuando true, uma requisição sem token devolve um banner de versão em vez de 404. Útil como verificação rápida; desative em produção.
UnsafeModefalseQuando true, ignora a verificação de segurança da sessão ASP.NET nas requisições de página. Desative em produção.
MiddlewarePath"/doconut"Valor de coordenação para o endpoint de página‑imagem. É validado, mas não monta um ramo por si só; mantenha alinhado com o mapeamento real de UseDoconut() e o BasePath do cliente.
ResourcesPath"/doconut-res"Onde os recursos incorporados de JS/CSS/imagem são servidos.
LicensePath"" (string vazia)Caminho para o arquivo de licença. Vazio significa que será procurado na próxima fonte, então busca automática.
LicenseContent"" (string vazia)Conteúdo bruto da licença — proveniente de variável de ambiente, gerenciador de segredos ou banco de dados.
LicenseStreamnullLicença como stream, lida uma única vez na inicialização.
ResetLicensefalseBandeira de compatibilidade reservada. Os serviços atuais do .NET 8 leem a licença durante AddDoconut(); reinicie a aplicação após substituir uma licença.

Prioridade de licença quando mais de uma fonte está definida: LicenseStream supera LicenseContent, que supera LicensePath, que supera a busca automática — veja License Setup.

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 passos

Esta página foi útil?