Progress

Progress

Deze gids laat zien hoe je de voortgang van langdurige document laad- en opslagbewerkingen kunt volgen.

Langdurige laad- en opslagbewerkingen kunnen incrementele voortgang rapporteren via een klein callback-paar: IDocumentLoadingCallback voor het laden en IDocumentSavingCallback voor het opslaan. Beide interfaces volgen dezelfde vorm — een enkele Notify(args) methode aangeroepen door Aspose.Words FOSS voor .NET terwijl de bewerking vordert.


Documentladen monitoren

Implementeer IDocumentLoadingCallback en wijs de implementatie toe aan LoadOptions.ProgressCallback vóór het laden van een document. Tijdens het laden wordt Notify(args) aangeroepen met een DocumentLoadingArgs instantie waarvan de EstimatedProgress eigenschap (een double) rapporteert hoe ver het laden is gevorderd.


Documentopslaan monitoren

Implementeer IDocumentSavingCallback en wijs het toe aan SaveOptions.ProgressCallback vóór het aanroepen van Document.Save(fileName, saveOptions) (of de stream-overload). Tijdens het opslaan ontvangt Notify(args) een DocumentSavingArgs instantie, die eveneens EstimatedProgress blootlegt als een double.


Tips en best practices

  • DocumentLoadingArgs en DocumentSavingArgs zijn sealed classes waarvan het enige lid EstimatedProgress is — behandel voortgangsrapportage als een lichtgewicht percentage-achtige signaal voor UI-feedback, niet als een gedetailleerd operationeel logboek.
  • Stel ProgressCallback in op de LoadOptions of SaveOptions instantie voordat je deze doorgeeft aan Document(fileName, loadOptions) of Document.Save(fileName, saveOptions) — het later toewijzen heeft geen effect op een al lopende bewerking.
  • Gebruik een aparte callback-implementatie voor laden versus opslaan; IDocumentLoadingCallback en IDocumentSavingCallback zijn verschillende interfaces, hoewel beide een enkele Notify(args)-methode blootstellen.

Veelvoorkomende problemen

ProbleemOorzaakOplossing
Notify(args) wordt nooit aangeroepenProgressCallback is niet ingesteld op de LoadOptions/SaveOptions instantie die is doorgegeven aan de load- of save-aanroepWijs ProgressCallback toe voordat Document(fileName, loadOptions) of Document.Save(fileName, saveOptions) wordt aangeroepen
Progress-callback compileert tegen het verkeerde argumenttypeIDocumentLoadingCallback.Notify neemt DocumentLoadingArgs; IDocumentSavingCallback.Notify neemt DocumentSavingArgs — ze zijn niet onderling verwisselbaarImplementeer de interface die overeenkomt met de bewerking (laden vs. opslaan)

FAQ

Wat betekent EstimatedProgress?

Het is een double eigenschap op DocumentLoadingArgs (tijdens het laden) of DocumentSavingArgs (tijdens het opslaan) die de geschatte voltooiingsvoortgang van de bewerking rapporteert.

Kan ik een laad- of opslaan-bewerking annuleren vanuit de voortgangs-callback?

Notify(args) op beide interfaces neemt alleen het argumenten-object (DocumentLoadingArgs of DocumentSavingArgs); geen van beiden exposeert een annuleringsvlag in deze API oppervlakte.

Heb ik aparte callback-klassen nodig voor laden en opslaan?

Je hebt aparte implementaties van IDocumentLoadingCallback en IDocumentSavingCallback respectievelijk nodig, aangezien het verschillende interfaces zijn, hoewel één enkele klasse beide kan implementeren.


API Reference Samenvatting

Klasse / InterfaceBeschrijving
IDocumentLoadingCallbackNotify(args) — implementeer voor laadvorderingsmeldingen
IDocumentSavingCallbackNotify(args) — implementeer voor opslaan-voortgangsmeldingen
DocumentLoadingArgsEstimatedProgress: double — doorgegeven aan IDocumentLoadingCallback.Notify
DocumentSavingArgsEstimatedProgress: double — doorgegeven aan IDocumentSavingCallback.Notify
LoadOptions.ProgressCallbackVoegt een IDocumentLoadingCallback toe aan een laadoperatie
SaveOptions.ProgressCallbackVoegt een IDocumentSavingCallback toe aan een bewaaroperatie

Zie ook

 Nederlands