Web-Extension संग्रह वर्ग

Web-Extension संग्रह वर्ग

वेब-एक्सटेंशन कलेक्शन क्लासेज

यह गाइड दिखाता है कि Aspose.Words FOSS for .NET में चार वेब-एक्सटेंशन संग्रह वर्ग कैसे — TaskPaneCollection, WebExtensionBindingCollection, WebExtensionPropertyCollection, और WebExtensionReferenceCollection — एब्स्ट्रैक्ट के माध्यम से एक एकल संग्रह अनुबंध को साझा करते हैं BaseWebExtensionCollection बेस क्लास। टास्क पैन, बाइंडिंग्स, और वेब एक्सटेंशन प्रॉपर्टीज़ वास्तव में क्या दर्शाते हैं, देखें वेब एक्सटेंशन गाइड; यह पेज केवल उन कंटेनर API को कवर करता है जो वे सभी साझा करते हैं।


BaseWebExtensionCollection: एक कॉन्ट्रैक्ट, चार संग्रह

BaseWebExtensionCollection TaskPaneCollection, WebExtensionBindingCollection, WebExtensionPropertyCollection, और WebExtensionReferenceCollection के लिए बेस क्लास है। यह IEnumerable<T> को लागू करता है और इन चार ठोस संग्रहों द्वारा उजागर किए गए प्रत्येक सदस्य को परिभाषित करता है — चारों सबक्लास में से कोई भी बेस क्लास द्वारा प्रदान किए गए से आगे अतिरिक्त मेथड्स या प्रॉपर्टीज़ घोषित नहीं करता।


आइटम जोड़ना, हटाना, और गिनना

Add(item) निर्दिष्ट आइटम को संग्रह में जोड़ता है। Clear() सभी तत्वों को हटा देता है। Remove(index) निर्दिष्ट इंडेक्स पर आइटम को हटाता है — यह एक पोज़िशनल index लेता है, न कि आइटम रेफ़रेंस, इसलिए किसी विशिष्ट आइटम को हटाने के लिए पहले उसका इंडेक्स ढूँढ़ना पड़ता है। Count वर्तमान में संग्रह में मौजूद तत्वों की संख्या रिपोर्ट करता है।


संग्रह का अनुक्रमण

GetEnumerator() एक enumerator लौटाता है जो संग्रह के माध्यम से इटररेट कर सकता है, इसलिए कोई भी BaseWebExtensionCollection-उत्पन्न संग्रह अपने आइटम्स पर foreach लूप का समर्थन करता है बिना प्रकार-विशिष्ट इटररेशन कोड के।


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

  • क्योंकि सभी चार संग्रह समान बेस कॉन्ट्रैक्ट साझा करते हैं, BaseWebExtensionCollection के Add, Clear, Remove, Count, और GetEnumerator सदस्यों के खिलाफ लिखा गया कोड TaskPaneCollection, WebExtensionBindingCollection, WebExtensionPropertyCollection, और WebExtensionReferenceCollection में समान रूप से काम करता है।
  • Remove(index) एक स्थितिजन्य इंडेक्स लेता है — यदि आपके पास केवल आइटम स्वयं है, तो पहले संग्रह को इटररेट करके उसका इंडेक्स खोजें, या सम्मिलन के समय इंडेक्स को ट्रैक करें।
  • इटररेट करने से पहले Count पढ़ें, या foreach सीधे संग्रह पर GetEnumerator() के साथ करें बजाय मैन्युअल रूप से इंडेक्स करने के, क्योंकि बेस कॉन्ट्रैक्ट स्थितिजन्य getter को उजागर नहीं करता।
  • जब आपको एक संग्रह को रीसेट करने की आवश्यकता हो तो Clear() को कॉल करें, बजाय लूप में बार-बार Remove को कॉल करने के।

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

समस्याकारणसुधारें
Remove आइटम को स्वयं स्वीकार नहीं करताRemove(index) BaseWebExtensionCollection-डेराइव्ड कलेक्शन्स पर पोज़िशनल इंडेक्स लेता है, रेफ़रेंस नहींपहले आइटम का इंडेक्स खोजें (उदाहरण के लिए एने्यूमरेट करते समय), फिर Remove(index) को कॉल करें
चार कलेक्शनों में से एक पर इटरेट करना प्रकारों में दोहराव जैसा लगता हैप्रत्येक कलेक्शन एक अलग ठोस प्रकार है, लेकिन वे सभी BaseWebExtensionCollection के सदस्य साझा करते हैंसभी चार में सामान्य Add, Clear, Remove, Count, और GetEnumerator सदस्यों के विरुद्ध साझा इटरेशन या यूटिलिटी लॉजिक एक बार लिखें
सुनिश्चित नहीं है कि कोड के एक टुकड़े को कौन सा ठोस संग्रह प्रकार चाहिएचारों संग्रह WebExtension और Document पर विभिन्न गुणों से उजागर किए गए हैंजाँचें वेब एक्सटेंशन गाइड कि कौन सा गुण कौन सा संग्रह प्रकार लौटाता है

FAQ

चार वेब-एक्सटेंशन कलेक्शन एक ही तरह से क्यों व्यवहार करते हैं?

वे सभी एक ही एब्स्ट्रैक्ट बेस क्लास, BaseWebExtensionCollection, से व्युत्पन्न होते हैं, जो Add, Clear, Remove, Count और GetEnumerator को परिभाषित करता है — चारों सबक्लास में से कोई भी अपने स्वयं के सदस्य नहीं जोड़ता।

इनमें से किसी एक कलेक्शन से एक विशिष्ट आइटम को कैसे हटाऊँ?

Remove(index) को आइटम के पोज़िशनल इंडेक्स के साथ कॉल करें — यदि आपके पास केवल आइटम रेफ़रेंस है तो पहले कलेक्शन को एनीमरेट करके इंडेक्स खोजें।

क्या मैं इन चारों कलेक्शन में से किसी को भी उसी तरह इटरेट कर सकता हूँ?

हाँ — चारों ही IEnumerable<T> को BaseWebExtensionCollection तक लागू करते हैं, इसलिए GetEnumerator() / foreach उनके बीच समान रूप से काम करता है।

मैं यह कहाँ सीख सकता हूँ कि WebExtensionBinding या TaskPane आइटम वास्तव में क्या दर्शाता है?

देखें वेब एक्सटेंशन गाइड — यह पृष्ठ केवल साझा संग्रह कंटेनर व्यवहार को कवर करता है, न कि उन डोमेन ऑब्जेक्ट्स को जो संग्रह रखता है।


API Reference सारांश

क्लास/मेथडविवरण
BaseWebExtensionCollectionसभी चार वेब-एक्सटेंशन कलेक्शन प्रकारों द्वारा साझा की गई Abstract base class
BaseWebExtensionCollection.Add(item)संग्रह में एक आइटम जोड़ता है
BaseWebExtensionCollection.Clear()संग्रह से सभी तत्व हटाता है
BaseWebExtensionCollection.Remove(index)निर्दिष्ट अनुक्रमणिका पर आइटम को हटाता है
BaseWebExtensionCollection.GetEnumerator()संग्रह को इटररेट करने के लिए एक enumerator लौटाता है
BaseWebExtensionCollection.Countसंग्रह में तत्वों की संख्या
TaskPaneCollectionठोस BaseWebExtensionCollection of TaskPane items
WebExtensionBindingCollectionConcrete BaseWebExtensionCollection WebExtensionBinding आइटम्स का
WebExtensionPropertyCollectionConcrete BaseWebExtensionCollection WebExtensionProperty आइटम्स का
WebExtensionReferenceCollectionConcrete BaseWebExtensionCollection WebExtensionReference आइटम्स का

यह भी देखें

 हिन्दी