Felsökning

Diagnostisera vanliga fel

Varje meddelande nedan är den bokstavliga text som Doconut producerar, organiserad efter symptom. Hitta ditt fel och tillämpa lösningen.

Visaren visar ingenting

Tomt visningsområde, webbläsarkonsolen full av 404-fel för /doconut-res/...
UseDoconutResources() saknas, eller placerad efter UseDoconut(). Den måste komma först i pipeline:n.

HTTP 500 med:

text
Session middleware not configured. Call UseSession() before UseDoconut().

Doconuts token‑säkerhet (aktiverad som standard) kräver ASP.NET‑sessionsstate. Lägg till builder.Services.AddSession() och app.UseSession() före Doconut‑middleware‑grenen. Sessionsstate behöver också en cache: i en minimal‑API‑app lägg till builder.Services.AddDistributedMemoryCache(), eller så stannar appen vid start med Unable to resolve service for type 'IDistributedCache' (MVC‑ och Razor‑Pages‑appar registrerar redan en).

En felbild i sidområdet med texten:

text
You Are Not Authorized To View This Page.

Tokenet öppnades av en annan webbläsarsession. Vanliga orsaker: sessionskakan når inte sidförfrågningarna (cross‑origin‑inställning, SameSite‑policy, en API‑klient utan cookie‑behållare), eller så startade appen om (nya sessionsnycklar). Detta är säkerhetslagret som fungerar som avsett — se Kärnkoncept → Sessioner & Säkerhet.

En felbild med texten:

text
Document session not found. Please re-open document.

Tokenet har gått ut (glidande fönster, standard 60 minuter — DocOptions.TimeOut) eller sessionen har stängts. Öppna dokumentet igen för ett nytt token.

Öppning av ett dokument misslyckas

LicenseException med ett avvisningsmeddelande — licensfilen hittades men avvisades (ogiltig signatur, manipulerad, svartlistad, eller en build utanför licensens versions-/uppdateringsfönster). Detta tillstånd blockerar öppning (fail‑fast) istället för att degraderas till ett vattenstämpel; läs License.RejectionMessage för orsaken.

LicenseException:

text
This document type requires the 'Dicom' plugin license.

Filändelsen hanteras endast av ett plugin (här: DICOM) och funktionen beviljas inte längre. Registrera pluginet och verifiera lic.IsCapabilityGranted(LicenseCapability.Dicom). En saknad eller otillräcklig icke‑tillfällig rättighet misslyckas normalt tidigare under AddDoconut().

FormatNotSupportedException:

text
Document format '<extension>' is not supported.

Ingen visare — inbyggd, plugin eller anpassad — stödjer den filändelsen. Kontrollera listan över stödda format; för egna format kan DoconutOptions.RegisterViewer lägga till ett.

InvalidDataException — filinnehållet är korrupt eller matchar inte filändelsen (t.ex. en omdöpt fil). Validera uppladdningar innan öppning.

InvalidOperationException:

text
No IDocumentConverter is registered. Add the converter plugin: options.AddPlugin<Doconut.Plugins.Converter.ConverterPlugin>().

Du löste DocumentConverter utan att registrera Converter‑pluginet.

Uppstart misslyckas

InvalidOperationException som nämner ett plugin registrerat via AddPlugin — den nuvarande icke‑tillfälliga licensen beviljar inte den plugin‑funktionen. Ta bort registreringen eller installera en licens som beviljar den. En saknad licens och en äldre TRIAL‑fil ger inga plugin‑funktioner.

ArgumentException from AddDoconut():

text
DoconutOptions.MiddlewarePath must be a non-empty path starting with '/'.
DoconutOptions.ResourcesPath must be a non-empty path starting with '/'.
DoconutOptions.MiddlewarePath and ResourcesPath must be different paths.

Fail‑fast‑alternativvalidering — åtgärda den felaktiga sökvägen.

Bygg‑ / beroende‑fel

Komplilatorfel CS1705, eller vid körning när ett dokument öppnas:

text
Could not load file or assembly 'System.Text.Json, Version=10.0.0.0'

Ditt projekt har låst System.Text.Json / System.Text.Encodings.Web under 10.0.x. Ta bort nedgraderingen och låt NuGet återställa de versioner som Doconut.NET8 deklarerar.

TypeInitializationException on the first presentation file:

text
Could not load ... System.Drawing.Common, Version=6.0.0.0

Presentationsmotorn kräver fast System.Drawing.Common 6.0.0 (deklarerad av paketet). Ta inte bort eller åsidosätt det beroendet — varje PPT/PPTX/PPS/POT/ODP‑öppning misslyckas utan det.

Utdata ser felaktig ut

Sidor har ett vattenstämpel — appen är i ett utvärderingsläge: ingen licensfil hittades, ett utgånget tillfälligt eller prenumerationsfönster, eller en ogiltig domän. Inspektera IDoconutLicenseService (License.IsLicenseFileFound, IsExpired, IsVersionValid, IsValidForDomain, License.RejectionMessage) — Licenssidan's IDoconutLicenseService‑referens visar en färdig endpoint.

Äldre dokument renderar förvrängd text — kodsidssättningar laddas inte som standard i .NET 8. Lägg till en gång vid start:

csharp
Encoding.RegisterProvider(CodePagesEncodingProvider.Instance);

Felaktiga eller ersatta typsnitt på Linux/Docker — containern saknar dokumentets typsnitt. Peka FontFolders (på WordConfig/PptConfig) mot en monterad typsnittskatalog.

Presentationer öppnas men misslyckas med rendering på Linux/macOS — den nuvarande PPT/PPTX/PPS/POT/ODP‑renderaren kräver native libgdiplus plus System.Drawing.EnableUnixSupport=true. Paketet levererar System.Drawing.Common 6.0.0 eftersom det är den sista versionen som stödjer denna switch.

Funktion fungerade i utvärdering, tyst i produktion

Den klassiska gå‑live‑överraskningen: en aktiv tillfällig licens beviljar alla funktioner; din köpta licens beviljar bara det du köpt. Sök‑ och annoteringspaket kan försvinna när deras funktioner saknas. Registrerade Converter‑ eller DICOM‑plugin med en otillräcklig icke‑tillfällig licens misslyckas under AddDoconut(). Jämför IsCapabilityGranted(...) mot varje funktion du aktiverar innan driftsättning.

Sökning hittar inget (eller för lite)

  • För en direkt PDF var AllowSearch inte aktiverad vid öppning. Word, Excel och PowerPoint exponerar samma switch via deras inbäddade PdfConfig.
  • Innehållet är skannat/endast bild, så vanlig Sökning har inget textlager att matcha. Använd en textbärande källa eller en PDF‑projektion som bevarar text.
  • HTML och MS Project (MPP) är inte sökbara i sina standardinställningar — ställ in DefaultRender = false så att de renderas via en PDF‑projektion med ett inbyggt textlager. Word, Excel, PowerPoint, TXT, Visio, e‑post, EPUB och MHT söker i sina katalogstandarder.
  • objViewer.CanSearch() är false efter initiering — det lösta formatet har ingen standard sökväg för sökning. Detta omdöme är separat från Sök‑licensen; verifiera båda.

Fortfarande fast?

Isolera problemet mot den minimala Snabbstart‑appen; om det reproduceras där, kontakta support med dokumentet, din Program.cs och licensdiagnostikens utdata.

Var den här sidan hjälpsam?