Sim—você pode incorporar um visualizador de arquivos online seguro e sem plugins em qualquer aplicação ASP.NET Core, MVC ou WebForms em apenas alguns minutos, e o Doconut App faz todo o trabalho pesado.
Empresas que fornecem contratos, desenhos ou ativos de design precisam de um visualizador que respeite as políticas de segurança corporativa e nunca obrigue os usuários a instalar plugins legados do navegador. Doconut fornece um SDK de visualizador de documentos .NET para fluxos de trabalho baseados em navegador com PDF, Office, CAD, e‑mail e imagens. Este post descreve as decisões de integração sem depender de código de exemplo específico de versão.

1. Por que segurança e renderização sem plugins são importantes para apps web .NET
Empresas modernas tratam cada documento como um potencial vazamento de dados. Quando você incorpora um visualizador que depende de ActiveX, Flash ou um cliente nativo, você herda três riscos:
| Risco | Impacto na sua aplicação .NET | Como o Doconut App elimina isso |
|---|---|---|
| Dependência de plugin | Os usuários precisam instalar ou habilitar um plugin do navegador, gerando tickets de suporte e dores de cabeça de conformidade. | O Doconut funciona totalmente em HTML5/Canvas, exigindo zero plugins. |
| Trânsito não criptografado | Os arquivos trafegam por HTTP ou são armazenados em texto puro, violando GDPR, HIPAA ou políticas internas. | Todos os uploads passam por SSL e são armazenados com criptografia AES‑256. |
| Ciclo de vida não controlado | Os arquivos podem permanecer no servidor, aumentando a superfície de violação. | O Doconut exclui automaticamente os arquivos após a visualização, garantindo uma janela curta de retenção. |
Como o visualizador é entregue como um componente JavaScript que se comunica com o serviço de renderização segura do Doconut, você mantém a pilha .NET limpa — sem bibliotecas nativas adicionais, sem binários de terceiros e sem auditorias de conformidade extras.
2. Prepare o projeto .NET
Use o pacote, a documentação e os exemplos que correspondam à versão do Doconut selecionada para o projeto. A página oficial de download do Doconut é o ponto de partida confiável.
Antes da integração, confirme o runtime .NET alvo, registre a versão do pacote, mantenha a configuração de licença fora do controle de versão e comece com documentos representativos. ASP.NET Core, MVC e WebForms têm ciclos de vida de aplicação diferentes, portanto suas configurações não devem ser tratadas como idênticas.
3. Construindo um endpoint de upload seguro – AES‑256, SSL e exclusão automática
O visualizador nunca acessa arquivos diretamente no seu sistema de arquivos. Em vez disso, você envia o documento para um local de armazenamento temporário e criptografado que o Doconut lê sob demanda. A seguir, uma descrição de alto nível das etapas necessárias para ASP.NET Core; as mesmas ideias se aplicam a MVC e WebForms.
Fluxo de trabalho no servidor
- Aceitar o arquivo enviado – Use o padrão
IFormFile(ouHttpPostedFileem WebForms) para receber o documento do cliente. - Criptografar o arquivo com AES‑256 – Antes de persistir o stream, criptografe-o usando uma biblioteca comprovada como
System.Security.Cryptography.Aes. Armazene o blob criptografado em um local seguro (por exemplo, Azure Blob Storage com criptografia do lado do servidor habilitada, ou um bucket S3 com SSE‑AES256). - Gerar uma URL assinada de curta duração – Crie uma URL válida por alguns minutos (por exemplo, 5 minutos). A URL deve ser HTTPS e incluir um token criptográfico que o Doconut possa validar. A maioria dos provedores de armazenamento em nuvem oferece um recurso de “URL pré‑assinada” que atende a essa necessidade.
- Retornar a URL assinada ao cliente – Envie uma resposta JSON contendo a URL. O cliente passará essa URL ao visualizador Doconut.
- Agendar exclusão automática – Após a expiração da URL assinada, um job em segundo plano (Hangfire, Azure Functions, etc.) remove o blob criptografado, garantindo que o arquivo não permaneça no servidor.
- MVC – Coloque a mesma lógica dentro de uma ação de controlador regular e retorne
JsonResult. - WebForms – Implemente um manipulador
.ashxou um método de página que siga as mesmas etapas: receberRequest.Files[0], criptografar, gerar uma URL pré‑assinada e escrever a resposta JSON.
A única diferença está na sintaxe de roteamento; o fluxo de segurança permanece idêntico.
4. Renderizar o documento através do SDK instalado
Mantenha o acesso ao documento no servidor e aplique autorização antes de processar um arquivo ou stream. A sequência exata de renderização e inicialização da UI é específica da versão; siga a documentação oficial fornecida com a build instalada em vez de copiar uma API JavaScript global não verificada.
Por que isso funciona para qualquer variante .NET
- ASP.NET Core Razor – O script reside na mesma view que hospeda o formulário de upload, portanto o fluxo é contínuo.
- MVC – Use
@section Scriptspara injetar o mesmo trecho; o controlador retorna JSON que o$.ajaxdo MVC pode consumir. - WebForms – Registre o script com
ClientScript.RegisterStartupScriptapós a conclusão do upload, então chamelaunchViewerda mesma forma.
Como o Doconut transmite o documento diretamente da URL assinada, o servidor nunca mais toca no arquivo após a etapa de upload. O visualizador renderiza PDFs, arquivos Word, desenhos CAD e todos os outros formatos listados nos fatos do produto — sem nenhuma conversão adicional no servidor.
5. Personalizando o visualizador para combinar com sua marca – ajuste fino do visualizador de arquivos online
Empresas frequentemente precisam que o visualizador pareça uma parte nativa do seu portal. A UI totalmente personalizável do Doconut App permite:
| Personalização | Como aplicar em .NET |
|---|---|
| Layout da barra de ferramentas | Passe toolbar: false e construa seus próprios botões que chamam a API JavaScript do visualizador (ex.: zoomIn(), print()). |
| Esquema de cores | Defina theme: "dark" ou forneça um arquivo CSS personalizado que sobrescreva as classes padrão. |
| Idioma e acessibilidade | O Doconut respeita o atributo lang no contêiner; você também pode injetar rótulos ARIA via a opção accessibility. |
| Ganchos de eventos | Callbacks como onPageChange, onError e onDownload permitem registrar métricas de uso em seu pipeline de telemetria existente. |
Todos esses ganchos são configurados no mesmo objeto JavaScript mostrado na seção anterior. Como o visualizador reside totalmente no cliente, não há carga extra no servidor — seu backend .NET permanece focado em autenticação, criptografia e lógica de negócios.
6. Desempenho e escalabilidade – mantenha a experiência ágil
Incorporar um visualizador em um portal de alto tráfego levanta duas preocupações práticas: tempo de carregamento e renderização concorrente. O Doconut App resolve ambos imediatamente, mas você pode reforçar o desempenho com algumas dicas específicas para .NET.
| Preocupação | Vantagem incorporada do Doconut | Dica adicional para .NET |
|---|---|---|
| Download inicial | O script do visualizador Doconut tem apenas ~150 KB, compactado em gzip. | Habilite compressão de arquivos estáticos (app.UseResponseCompression()) e cache (Cache‑Control: public, max‑age=31536000). |
| Transmissão de arquivos | O Doconut transmite apenas as páginas necessárias, usando requisições de intervalo HTTP. | Armazene blobs criptografados em um CDN regional (Azure Front Door, Amazon CloudFront) para reduzir latência. |
| Usuários concorrentes | A renderização ocorre no cliente; o servidor apenas fornece o arquivo criptografado uma vez por visualização. | Limite a taxa do endpoint de upload com IApplicationRateLimiter para proteger contra picos. |
| Pegada de memória | Sem bibliotecas de conversão PDF no servidor, portanto o processo ASP.NET permanece leve. | Execute o serviço de upload em um microserviço separado se você já possui uma fila de jobs em segundo plano pesada. |
Seguindo estas diretrizes, você pode suportar milhares de visualizadores simultâneos sem escalar a camada web .NET além do que já possui.
Principais Conclusões
- Doconut App fornece um visualizador sem plugins, 100 % seguro que funciona com ASP.NET Core, MVC e WebForms.
- Os uploads são apenas SSL, armazenados com criptografia AES‑256 e excluídos automaticamente após a expiração da URL assinada.
- A integração requer apenas um script CDN, um contêiner
<div>e um pequeno endpoint no servidor que retorna uma URL assinada. - O visualizador suporta PDF, Office, CAD e mais de 50 formatos de imagem — sem necessidade de conversão no servidor.
- A UI pode ser totalmente personalizada para combinar com a identidade corporativa, e o visualizador oferece zoom, medição e ferramentas de camada integradas para arquivos CAD.
- O desempenho é tratado no lado do cliente; desenvolvedores .NET precisam apenas garantir compressão de arquivos estáticos e cache opcional via CDN.
- Todo o fluxo — desde o upload seguro até a renderização no navegador — encaixa perfeitamente nos pipelines existentes de autenticação e autorização .NET.
Perguntas Frequentes
Q1: Preciso instalar algum pacote NuGet para usar o Doconut?
R: Não. O visualizador é entregue como um bundle JavaScript do lado do cliente a partir do CDN do Doconut. Seu servidor só precisa do middleware usual do ASP.NET Core para uploads de arquivos e criptografia, que você provavelmente já tem.
Q2: Como o Doconut garante que o arquivo seja excluído após a visualização?
R: O Doconut gera uma URL assinada de curta duração que expira após um período configurável (geralmente cinco minutos). Após a expiração da URL, você (ou um job de limpeza em segundo plano) exclui o blob criptografado. Isso garante que o documento não seja retido por mais tempo do que o necessário, atendendo a políticas rigorosas de retenção de dados.
Q3: Posso usar o visualizador para imprimir ou exportar o documento?
R: Sim. A barra de ferramentas integrada do Doconut inclui opções de impressão e exportação que preservam a qualidade e o layout original do arquivo fonte.
Pronto para incorporar um visualizador de documentos seguro e sem plugins na sua aplicação .NET? Comece com o Doconut App hoje e entregue PDF, Office, CAD e dezenas de outros formatos de forma segura e instantânea.