Progress

Progress

यह गाइड दिखाता है कि लंबी अवधि के दस्तावेज़ लोड और सहेजने के संचालन की प्रगति को कैसे ट्रैक किया जाए।

लंबी अवधि के लोड और सहेजने के संचालन छोटे कॉलबैक जोड़े के माध्यम से क्रमिक प्रगति रिपोर्ट कर सकते हैं: IDocumentLoadingCallback लोडिंग के लिए और IDocumentSavingCallback सहेजने के लिए। दोनों इंटरफ़ेस समान रूपरेखा का पालन करते हैं — एक ही Notify(args) मेथड जिसे Aspose.Words FOSS द्वारा .NET के लिए संचालन के आगे बढ़ने पर बुलाया जाता है।


दस्तावेज़ लोडिंग की निगरानी

दस्तावेज़ लोड करने से पहले IDocumentLoadingCallback को लागू करें और कार्यान्वयन को LoadOptions.ProgressCallback को असाइन करें। लोडिंग के दौरान, Notify(args) को एक DocumentLoadingArgs इंस्टेंस के साथ बुलाया जाता है जिसकी EstimatedProgress प्रॉपर्टी (एक double) यह रिपोर्ट करती है कि लोड कितनी दूर तक प्रगति कर चुका है।


दस्तावेज़ सहेजने की निगरानी

IDocumentSavingCallback को लागू करें और इसे SaveOptions.ProgressCallback को असाइन करें, फिर Document.Save(fileName, saveOptions) को कॉल करें (या स्ट्रीम ओवरलोड)। सहेजने के दौरान, Notify(args) को एक DocumentSavingArgs इंस्टेंस प्राप्त होता है, जो समान रूप से EstimatedProgress को एक double के रूप में उजागर करता है।


टिप्स और सर्वोत्तम प्रथाएँ

  • DocumentLoadingArgs और DocumentSavingArgs सील्ड क्लासेज हैं जिनका एकमात्र सदस्य EstimatedProgress है — प्रोग्रेस रिपोर्टिंग को UI फ़ीड़बैक के लिए हल्के वजन वाले प्रतिशत-शैली संकेत के रूप में देखें, विस्तृत ऑपरेशन लॉग के रूप में नहीं।
  • ProgressCallback को LoadOptions या SaveOptions इंस्टेंस पर सेट करें, फिर इसे Document(fileName, loadOptions) या Document.Save(fileName, saveOptions) को पास करें — बाद में इसे असाइन करने से पहले से चल रहे ऑपरेशन पर कोई प्रभाव नहीं पड़ेगा।
  • लोडिंग और सेविंग के लिए अलग कॉलबैक इम्प्लीमेंटेशन का उपयोग करें; IDocumentLoadingCallback और IDocumentSavingCallback अलग-अलग इंटरफ़ेस हैं जबकि दोनों एक ही Notify(args) मेथड प्रदान करते हैं।

सामान्य समस्याएँ

समस्याकारणसमाधान
Notify(args) कभी कॉल नहीं किया जाताProgressCallback को लोड या सेव कॉल में पास किए गए LoadOptions/SaveOptions इंस्टेंस पर सेट नहीं किया गयाProgressCallback को Document(fileName, loadOptions) या Document.Save(fileName, saveOptions) को कॉल करने से पहले असाइन करें
प्रोग्रेस कॉलबैक गलत तर्क प्रकार के विरुद्ध संकलित होता हैIDocumentLoadingCallback.Notify DocumentLoadingArgs लेता है; IDocumentSavingCallback.Notify DocumentSavingArgs लेता है — वे आपस में बदलने योग्य नहीं हैंइंटरफ़ेस को लागू करें जो ऑपरेशन (लोडिंग बनाम सेविंग) से मेल खाता है

FAQ

EstimatedProgress क्या दर्शाता है?

यह DocumentLoadingArgs (लोडिंग के दौरान) या DocumentSavingArgs (सेविंग के दौरान) पर एक double प्रॉपर्टी है जो ऑपरेशन की अनुमानित पूर्णता प्रोग्रेस रिपोर्ट करती है।

क्या मैं प्रोग्रेस कॉलबैक से लोड या सेव ऑपरेशन को रद्द कर सकता हूँ?

Notify(args) दोनों इंटरफेस पर केवल आर्गुमेंट्स ऑब्जेक्ट (DocumentLoadingArgs या DocumentSavingArgs) लेता है; इनमें से कोई भी इस API सतह में कैंसलेशन फ़्लैग नहीं दिखाता।

क्या मुझे लोडिंग और सेविंग के लिए अलग-अलग कॉलबैक क्लासेज़ की जरूरत है?

आपको क्रमशः IDocumentLoadingCallback और IDocumentSavingCallback के अलग-अलग इम्प्लीमेंटेशन चाहिए, क्योंकि वे अलग-अलग इंटरफ़ेस हैं, हालांकि एक ही क्लास दोनों को इम्प्लीमेंट कर सकता है।


API Reference सारांश

Class / Interfaceविवरण
IDocumentLoadingCallbackNotify(args) — load-progress notifications के लिए लागू करें
IDocumentSavingCallbackNotify(args) — save-progress notifications के लिए लागू करें
DocumentLoadingArgsEstimatedProgress: double — IDocumentLoadingCallback.Notify को पास किया गया
DocumentSavingArgsEstimatedProgress: double — IDocumentSavingCallback.Notify को पास किया गया
LoadOptions.ProgressCallbackलोड ऑपरेशन में IDocumentLoadingCallback संलग्न करता है
SaveOptions.ProgressCallbackसेव ऑपरेशन में IDocumentSavingCallback संलग्न करता है

यह भी देखें

 हिन्दी