Du får en självhostad, blixtsnabb dokumentvisare som körs i din .NET‑applikation
När du har gått igenom den här guiden kan du öppna PDF‑filer, Office‑dokument, CAD‑ritningar och dussintals andra format direkt i webbläsaren, med laddningstider på under en sekund, utan externa SaaS‑anrop och med full kontroll över säkerheten.
Förutsättningar
| Vad du behöver | Varför det är viktigt |
|---|---|
| .NET 6 eller senare (SDK:et riktar sig mot .NET 6+) | Säkerställer kompatibilitet med Online Document Viewer SDK |
| En Windows‑ eller Linux‑server där du kan köra din applikation (på plats eller i privat moln) | Självhosting kräver att visaren körs inom din egen infrastruktur |
| Tillgång till Online Document Viewer NuGet‑flödet (https://doconut.com) | SDK:et distribueras som ett NuGet‑paket |
| Grundläggande kunskap om ASP.NET Core och front‑end JavaScript | Du kommer att exponera en endpoint som returnerar en signerad URL och sedan starta visaren från webbläsaren |
| En lagringsplats för källfilerna (filsystem, blob‑lagring osv.) | Visaren renderar filer från en lokal eller nätverksväg; källan måste vara åtkomlig för serverprocessen |
Om någon av dessa komponenter saknas kommer bygget att fastna innan den första kodraden körs.
Installera Online Document Viewer SDK
Öppna din lösning i Visual Studio eller din föredragna IDE och lägg till det officiella SDK‑et via NuGet‑hanteraren:
dotnet add package Doconut.NET8
Paketet innehåller renderingsmotorn, formatkonverterare och ett tunt HTTP‑lager som levererar de genererade sidorna. Eftersom SDK:et kompileras in i din applikation kontaktas ingen extern tjänst vid körning.
När paketet har återställts, registrera SDK‑tjänsterna i Program.cs (eller Startup.cs för äldre mallar). Registreringen injicerar renderingspipeline i ASP.NET Core DI‑behållaren, vilket gör den tillgänglig för dina kontroller.
Konfigurera renderingspipeline för de erforderliga formaten
Visaren stödjer mer än 50 format direkt ur lådan, inklusive:
- 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
När en begäran anländer bestämmer SDK:et filtypen och väljer rätt konverterare. För bästa prestanda, aktivera det inbyggda cachelagret som lagrar den renderade sidan i minnet under hela begäran; detta är vad som ger den “Blixtsnabb – Omedelbar dokumentrendering med optimerad prestanda och laddning på under en sekund” upplevelsen.
I din kontroller, anropa SDK:ets renderingsmetod (t.ex. RenderAsync) och skicka den absoluta sökvägen till källfilen. Metoden returnerar ett HTML‑fragment som innehåller en canvas‑baserad visare. Eftersom renderingen sker på servern får klienten bara färdig markup att visa, vilket eliminerar tung klient‑sidig bearbetning.
Säkra visaren med token‑baserade URL:er och valfria restriktioner
Datans suveränitet och GDPR‑efterlevnad är vanliga bekymmer för lokala installationer. SDK:et integreras med ASP.NET Core:s autentiseringssystem, vilket låter dig generera en signerad token som ger engångsåtkomst till ett specifikt dokument.
Typiskt flöde:
- Front‑end‑delen ber ditt API om en förhandsgransknings‑token och anger dokumentidentifieraren.
- Ditt API validerar användarens behörigheter, skapar en JWT‑liknande token som kodar filvägen och en utgångstid, och returnerar token.
- Front‑end‑delen lägger till token i visarens URL (t.ex.
/viewer?token=…). SDK:et validerar token vid varje begäran och avvisar alla manipulerade eller utgångna token.
Om du behöver förhindra att användare laddar ner eller skriver ut dokumentet, konfigurera renderingsalternativen som SDK:et tillhandahåller för att inaktivera dessa åtgärder. Visarens JavaScript‑lager kommer då att dölja Ladda ner‑knappen, undertrycka utskriftsgenvägen och blockera högerklicks‑kontextmenyn.
Verifiera att allt fungerar
- Navigera till sidan som innehåller visaren.
- Dokumentet bör visas inom en sekund, med rullningslister, zoomkontroller och en sökruta.
- Om du konfigurerade visaren att inaktivera nedladdning, bör Ladda ner‑knappen vara dold.
- Högerklick på dokumentet bör inte öppna webbläsarens kontextmeny när den restriktionen är aktiverad.
- När token löper ut (standard är 5 minuter) bör en uppdatering av sidan returnera ett “401 Unauthorized”-fel, vilket bekräftar att token‑validering är aktiv.
Om någon av dessa kontroller misslyckas, gå tillbaka till motsvarande steg: saknad SDK‑registrering, felaktig token‑generering eller uteblivna säkerhetsflaggor.
