Molti sviluppatori iniziano cercando librerie di componenti UI quando hanno bisogno di visualizzare documenti in un'applicazione web. Doconut Viewer è un SDK .NET per aggiungere visualizzazione nel browser senza plugin a progetti ASP.NET Core, MVC o WebForms classici. La sicurezza dipende ancora dall'architettura completa dell'applicazione: autenticazione, autorizzazione, trasporto, archiviazione, validazione, pulizia, patching e monitoraggio.

1. Installa l'SDK Doconut App e prepara il tuo progetto .NET per più formati di file
1.1 Aggiungi il pacchetto supportato
Usa il pacchetto corrente e le istruzioni di configurazione dalla pagina di download di Doconut. Registra la versione scelta e verifica che supporti il runtime .NET di destinazione.
1.2 Verifica il riferimento al pacchetto
Dopo l'installazione, conferma il riferimento al pacchetto e la versione risolta nel file di progetto. Tenere le versioni esplicite aiuta a rendere le build e le distribuzioni riproducibili.
1.3 Abilita HTTPS
Servi l'applicazione tramite HTTPS affinché i documenti caricati non viaggino in chiaro sulla tua rete. Per un'app ospitata su Kestrel, aggiungi una configurazione dell'endpoint in appsettings.json:
{
"Kestrel": {
"Endpoints": {
"Https": {
"Url": "
}
}
}
}
Se ospiti su IIS, associa un certificato HTTPS al sito. Con HTTPS abilitato, il file viaggia su un canale sicuro verso il tuo server, che è dove l'SDK lo rende.
Da dove proviene la sicurezza. L'SDK gira all'interno della tua applicazione, sulla tua infrastruttura: non effettua chiamate verso i server Doconut, quindi i documenti non lasciano mai la tua rete. Questa è la proprietà su cui vale la pena progettare. Non è un certificato di conformità — l'SDK non fornisce alcuna attestazione ISO 27001, SOC 2 o HIPAA di sua proprietà, e non può conferirne una alla tua applicazione. Ciò che fa è mantenere il file all'interno di un confine che già controlli e che già auditi.
2. Configura upload sicuri di file e archiviazione per la gestione dei documenti
Questa è la parte che spetta a te piuttosto che all'SDK, ed è importante dirlo chiaramente: la sicurezza del trasporto, la crittografia a riposo, la conservazione e la pulizia sono decisioni che la tua applicazione prende. L'SDK rende i documenti; non è uno strato di archiviazione e non cripta il tuo disco per te.
2.1 Registra i servizi
In Startup.cs (o Program.cs nelle versioni moderne di .NET), registra i servizi Doconut nel contenitore di iniezione delle dipendenze seguendo la documentazione per la versione installata. Dove l'SDK necessita di una cartella di lavoro per l'output temporaneo di rendering, puntala a una posizione sotto il tuo controllo e rendi la pulizia di quella cartella tua responsabilità — un job pianificato o una durata gestita dall'applicazione, non un'assunzione.
2.2 Crea l'endpoint di upload
Implementa un'azione del controller che riceve un file caricato, lo scrive nello store che la tua applicazione utilizza già e restituisce un token monouso breve. Il token è ciò che il visualizzatore lato client utilizzerà per recuperare e rendere il documento. Nota che l'archiviazione è tua: fornisci all'SDK i byte o il percorso quando è il momento di renderizzare, e lui ti restituisce le pagine.
2.3 Proteggi l'endpoint
Poiché l'endpoint di upload gestisce dati sensibili, proteggilo con autenticazione e autorizzazione basata sui ruoli (ad esempio, solo gli utenti con ruolo DocumentViewer possono caricare). Convalida l'estensione e la dimensione lato server così come nel browser, e tratta i byte caricati come input non attendibile.
Non saltare questo presupponendo che l'SDK lo copra. La crittografia a riposo, la gestione delle chiavi e la pulizia dei file orfani sono compiti della tua applicazione. Se hai bisogno che i documenti siano criptati su disco, utilizza le funzionalità della piattaforma di cui ti fidi già — il visualizzatore non è il luogo dove farlo.
3. Incorporare il componente Viewer in ASP.NET Core, MVC o WebForms
Con il backend pronto, inizializza il viewer utilizzando le risorse e l'API documentate per la versione di Doconut installata.
3.1 Aggiungere il bundle JavaScript
Nel tuo layout condiviso, includi solo le risorse del viewer descritte nella documentazione corrispondente all'SDK installato. Non presumere nomi di bundle o percorsi fissi tra le versioni.
3.2 Creare una vista Razor per Core/MVC
Aggiungi una vista (ad es., Views/Document/View.cshtml) che contenga un input file, un elemento contenitore per il viewer e un piccolo script che carichi il file selezionato, riceva il token sicuro e inizializzi il widget Doconut Viewer.
Lo script dovrebbe:
- Catturare il file selezionato dall'elemento
<input type="file">. - Inviare il file al endpoint di upload usando
fetchoXMLHttpRequest. - Quando arriva la risposta autorizzata, inizializzare il viewer usando l'API supportata per la versione installata.
3.3 Equivalente WebForms
In una pagina WebForms (ad es., DocumentViewer.aspx), inserisci un controllo asp:FileUpload, un pulsante per avviare l'upload e un <div> che ospiterà il viewer. Nel code‑behind, chiama il servizio Doconut per memorizzare il file caricato, ottenere il token e registrare uno script di avvio che chiama una funzione JavaScript (initViewer(token)) per creare l'istanza del viewer.
Il motivo per farlo in questo modo: un unico percorso di rendering che serve tre modelli UI .NET, senza nulla installato sul computer dell'utente finale.
4. Personalizzare il Viewer per la gestione dei documenti
Il viewer viene renderizzato all'interno di un contenitore nella tua pagina, quindi l'applicazione circostante è già tua. Inoltre, prendi i nomi delle opzioni e i valori predefiniti dalla documentazione della versione installata anziché da qualsiasi tutorial, incluso questo — l'interfaccia di configurazione cambia tra le release e un nome di opzione hard‑coded è l'elemento più probabile a rompersi durante un aggiornamento.
Le decisioni da prendere in anticipo:
4.1 Quali controlli riceve l'utente
Decidi se i tuoi utenti devono poter scaricare il file originale o solo leggere le pagine renderizzate. La stampa controllata è parte del viewer e non un acquisto separato, quindi le regole di stampa sono una questione di configurazione, non di licenza.
4.2 Quali plugin ti servono realmente
Quattro sono licenziati separatamente, e l'elenco è abbastanza breve da valerne la memorizzazione: Annotation, Converter, DICOM e Search. La conversione — da DOC a PDF e altro — è il plugin Converter. La ricerca testuale è il plugin Search. Se non ti serve nessuno dei due, non li acquisti.
4.3 Localizzazione
Se la tua applicazione è multilingue, verifica cosa offre la versione installata per le stringhe UI del viewer prima di progettare intorno ad esse.
Perché è importante: il viewer dovrebbe apparire come parte del tuo prodotto. Ciò che non dovrebbe fare è promettere silenziosamente ai tuoi utenti funzionalità che la licenza acquistata non include.
5. Testare l'integrazione su tutti i formati supportati
Prima di andare in produzione, esegui un rapido controllo di coerenza per ogni tipo di file che ti aspetti che i tuoi utenti visualizzino. Usando il viewer di Doconut App, apri un file di esempio per ciascun formato e verifica che il rendering, la navigazione e gli eventuali strumenti specializzati funzionino come descritto.
| Formato | Scenario di test | Risultato atteso |
|---|---|---|
| Rapporto grande, multi‑pagina con immagini incorporate | Scorrimento fluido, zoom e resa accurata dei colori | |
| DOCX | Documento Word con tabelle e note a piè di pagina | Tutto il testo, le tabelle e le note a piè di pagina sono visibili; nessuno spostamento del layout |
| XLSX | Foglio di calcolo con grafici | I grafici vengono renderizzati come grafica vettoriale; lo zoom mantiene la nitidezza |
| PPTX | Presentazione con animazioni progressive | Ogni animazione su una slide viene renderizzata impilata in un unico fotogramma — è previsto, non è un errore |
| DWG | Disegno tecnico con livelli e riferimenti esterni | I livelli possono essere attivati/disattivati, le misurazioni di distanza e area funzionano; i riferimenti esterni (xrefs) e i font SHX sono assenti perché non erano presenti nel file |
| PSD | File Photoshop a livelli | Il composito salvato viene renderizzato, con i livelli nascosti che rimangono nascosti; i colori rimangono nitidi allo zoom |
| SVG | Grafica vettoriale con gradienti | I gradienti vengono renderizzati in modo fluido; lo zoom resta nitido |
| TIFF | Scansione ad alta risoluzione | L'immagine si carica rapidamente; lo zoom rivela i dettagli |
Testa con i file reali dei tuoi utenti, non con campioni puliti. I formati che sorprendono le persone sono quelli le cui stranezze sono intrinseche al formato stesso — un DWG che fa riferimento a quattro altri disegni, un foglio di calcolo i cui valori memorizzati non sono mai stati ricalcolati, una presentazione i cui font non erano incorporati. Il viewer gratuito su Doconut.app utilizza lo stesso motore, quindi è un modo rapido per vedere come appare un file particolarmente difficile prima di scrivere qualsiasi codice.
Conclusione
Incorporare un visualizzatore di documenti senza plugin si riduce a quattro cose: installare l'SDK, proteggere il proprio percorso di upload, renderizzare in un contenitore nella tua pagina e configurare solo ciò che la versione installata documenta. Il contributo del visualizzatore alla sicurezza è limitato e reale — funziona sui tuoi server e non invia nulla all'esterno. Tutto il resto di quell'elenco è della tua applicazione, e nessun SDK può farlo al posto tuo.
Pronto a valutarlo? Inizia con la pagina ufficiale di download e documentazione di Doconut, poi testa l'SDK nella stessa revisione di sicurezza applicata al resto della tua applicazione ASP.NET basata su Windows.