2015-10-09 7 views
6

में आईसीओन्टेंट लोडर बनाम आईसीटीसेरोडरोडरी ईपीआईसेवर 7 में, मैं ईपीसीसेवर रिपोजिटरी - आईकॉन्टेंट रिपोजिटरी और आईकॉन्टेंट लोडर को पकड़ने के लिए 2 अलग-अलग इंटरफेस में आया हूं।EPiServer

उदाहरण:

var repo = EPiServer.ServiceLocation.ServiceLocator.Current.GetInstance<IContentRepository>(); 

और:

var repo = EPiServer.ServiceLocation.ServiceLocator.Current.GetInstance<IContentLoader>(); 

जब दूसरे के सामने एक का उपयोग करने किसी को मुझे समझा सकते हैं? अग्रिम धन्यवाद।

उत्तर

10

दूसरे के सामने एक का उपयोग कब करें कार्रवाई पर निर्भर करता है जो आप करना चाहते हैं।

सबसे पहले, की सुविधा देता है उनकी परिभाषा के माध्यम से जाना (world.episerver.com पर कहा गया)

IContentRepository

"IContentRepository प्राथमिक एपीआई कि IContent वस्तुओं के लिए भंडार तरीकों [परिभाषित करता है .. ।] भंडार के माध्यम से, आप सामग्री उदाहरणों जैसे सीआरयूडी (बनाएं, पढ़ें, अपडेट करें, हटाएं) संचालन और अन्य परिचालनों जैसे कि लिस्टिंग और चाल (यानी, EPiServer.Core.IContent को लागू करने के उदाहरण) पर कर सकते हैं। "

IContentLoader

"एक सेवा है जो भंडार से सामग्री डेटा वस्तुओं को पढ़ने के लिए इस्तेमाल किया जा सकता का वर्णन करता है।"

परिभाषा राज्यों के रूप में, सामग्री को पढ़ने के लिए IContentLoader का उपयोग किया जाता है, उदा। यह सभी सीआरयूडी प्रदर्शन का समर्थन नहीं करता है। उपाख्यान: IContentRepository इंटरफ़ेस IContentLoader लागू करता है।

छोटा जवाब:

उपयोग IContentRepository जब आप संशोधित भंडार में सामग्री/डेटा पर योजना।

उपयोग IContentLoader जब आप केवल भंडार में सामग्री/डाटा पढ़ने की योजना है।

आशा है कि यह आपके लिए इसे स्पष्ट करे!

+0

Thx @ChrisRun। यह निश्चित रूप से इसे स्पष्ट करता है :) – ElC