Crea un Visualizzatore di Documenti Self‑Hosted in .NET – Guida Passo‑Passo
25/09/2026

Crea un Visualizzatore di Documenti Self‑Hosted in .NET – Guida Passo‑Passo

Scopri come incorporare un visualizzatore di documenti veloce, sicuro e self‑hosted in un'app .NET usando l'SDK Doconut e fornire anteprime PDF, Office, CAD senza servizi esterni.

Avrai un visualizzatore di documenti self‑hosted, ultra‑veloce, in esecuzione all'interno della tua applicazione .NET

Entro la fine di questa guida potrai aprire PDF, file Office, disegni CAD e decine di altri formati direttamente nel browser, con tempi di caricamento inferiori a un secondo, senza chiamate SaaS esterne e con pieno controllo sulla sicurezza.


Prerequisiti

Cosa ti servePerché è importante
.NET 6 o versioni successive (l'SDK mira a .NET 6+)Garantisce la compatibilità con l'SDK Online Document Viewer
Un server Windows o Linux dove puoi eseguire la tua applicazione (on‑premise o cloud privato)L'auto‑hosting richiede che il visualizzatore viva nella tua infrastruttura
Accesso al feed NuGet di Online Document Viewer (https://doconut.com)L'SDK è distribuito come pacchetto NuGet
Conoscenze di base di ASP.NET Core e JavaScript front‑endEsporterai un endpoint che restituisce un URL firmato e poi avvierai il visualizzatore dal browser
Un'area di archiviazione per i file sorgente (filesystem, blob storage, ecc.)Il visualizzatore rende i file da un percorso locale o di rete; la sorgente deve essere raggiungibile dal processo del server

Mancare uno di questi elementi farà sì che la compilazione si blocchi prima che la prima riga di codice venga eseguita.


Installa l'SDK Online Document Viewer

Apri la tua soluzione in Visual Studio o nell'IDE preferito e aggiungi l'SDK ufficiale tramite il gestore NuGet:

dotnet add package Doconut.NET8

Il pacchetto contiene il motore di rendering, i convertitori di formato e uno strato HTTP leggero che serve le pagine generate. Poiché l'SDK è compilato nella tua applicazione, nessun servizio esterno viene contattato a runtime.

Dopo il ripristino del pacchetto, registra i servizi SDK in Program.cs (o Startup.cs per i template più vecchi). La registrazione inietta la pipeline di rendering nel contenitore DI di ASP.NET Core, rendendola disponibile ai tuoi controller.


Configura la pipeline di rendering per i formati richiesti

Il visualizzatore supporta più di 50 formati pronti all'uso, tra cui:

  • PDF, DOC, DOCX, ODT, RTF
  • XLS, XLSX, CSV, ODS
  • PPT, PPTX, ODP
  • DWG, DXF, DGN (CAD)
  • PSD, SVG, TIFF, WEBP, ICO
  • EML, MSG, EPUB, MOBI, MPP, VSD

Quando arriva una richiesta, l'SDK determina il tipo di file e seleziona il convertitore appropriato. Per ottenere le migliori prestazioni, abilita lo strato di cache integrato che memorizza la pagina renderizzata in memoria per la durata della richiesta; è questo che fornisce l'esperienza “Lightning Fast – Rendering istantaneo dei documenti con prestazioni ottimizzate e caricamento sub‑secondo”.

Nel tuo controller, chiama il metodo di rendering dell'SDK (ad es., RenderAsync) e passa il percorso assoluto del file sorgente. Il metodo restituisce un frammento HTML che contiene un visualizzatore basato su canvas. Poiché il rendering avviene sul server, il client riceve solo markup pronto per la visualizzazione, eliminando l'elaborazione pesante lato client.


Metti al sicuro il visualizzatore con URL firmati e restrizioni opzionali

Sovranità dei dati e conformità al GDPR sono preoccupazioni comuni per le distribuzioni on‑premise. L'SDK si integra con il sistema di autenticazione di ASP.NET Core, permettendoti di generare un token firmato che concede accesso una tantum a un documento specifico.

Flusso tipico:

  1. Il front‑end richiede al tuo API un token di anteprima, fornendo l'identificatore del documento.
  2. Il tuo API valida i permessi dell'utente, crea un token in stile JWT che codifica il percorso del file e un timestamp di scadenza, e restituisce il token.
  3. Il front‑end aggiunge il token all'URL del visualizzatore (ad es., /viewer?token=…). L'SDK valida il token ad ogni richiesta e rifiuta qualsiasi token manomesso o scaduto.

Se devi impedire agli utenti di scaricare o stampare il documento, configura le opzioni di rendering fornite dall'SDK per disabilitare tali azioni. Lo strato JavaScript del visualizzatore nasconderà quindi il pulsante di download, sopprimerà la scorciatoia di stampa e bloccherà il menu contestuale del tasto destro.


Verifica che tutto funzioni

  1. Naviga alla pagina che ospita il visualizzatore.
  2. Il documento dovrebbe apparire entro un secondo, con barre di scorrimento, controlli di zoom e una casella di ricerca.
  3. Se hai configurato il visualizzatore per disabilitare il download, il pulsante “Download” dovrebbe essere nascosto.
  4. Un clic con il tasto destro sul documento non dovrebbe aprire il menu contestuale del browser quando la restrizione è attiva.
  5. Dopo la scadenza del token (il valore predefinito è 5 minuti), l'aggiornamento della pagina dovrebbe restituire un errore “401 Unauthorized”, confermando che la validazione del token è attiva.

Se uno di questi controlli fallisce, ricontrolla il passaggio corrispondente: registrazione dell'SDK mancante, generazione del token errata o flag di sicurezza omessi.