2012-08-23 14 views
6

मैं ट्रिडियन कोर सेवा के लिए काफी नया हूं इसलिए यह एक साधारण सवाल हो सकता है। मैं एक प्रकाशन आईडी पास करके सभी मेटाडेटा स्कीमा प्राप्त करना चाहता हूं। अगर किसी ने कभी ऐसा किया है तो कृपया उत्तर दें।एक प्रकाशन के सभी मेटाडेटा स्कीमा प्राप्त करें

अग्रिम

+0

आपने पहले से क्या प्रयास किया है? http://mattgemmell.com/2008/12/08/what-have-you-tried/ स्टैक ओवरफ़्लो और सामान्य रूप से इंटरवेब्स पर ट्रिडियन से वस्तुओं को पुनर्प्राप्त करने के लिए कोर सेवा का उपयोग करने के कई उदाहरण हैं। उनमें से कुछ आज़माएं और देखें कि वे आपकी आवश्यकताओं के अनुरूप कैसे हैं। यदि आप ऐसा कर रहे हैं, तो हम आपको "अनस्टक" पाने के लिए अपना सर्वश्रेष्ठ प्रयास करेंगे। –

उत्तर

10

ठीक है, यहां एक उदाहरण है। GetCoreServiceClient पहले से ही सही उपयोगकर्ता के लिए बुलाए गए प्रतिरूपण के साथ एक सत्रवेयरवेयर सेवा क्लाइंट देता है।

public static IdentifiableObjectData[] GetMetadataSchemas(string publicationId) 
{ 
    using (var client = GetCoreServiceClient()) 
    { 
     var filter = new RepositoryItemsFilterData 
     { 
      SchemaPurposes = new[] { SchemaPurpose.Metadata }, 
      Recursive = true, 
      ShowNewItems = false, 
      ItemTypes = new[] { ItemType.Schema } 
     }; 

     return client.GetList(publicationId, filter); 
    } 
} 
10

धन्यवाद मैं तुम्हें [यहां] [1] (लॉगिन आवश्यक है) से नमूना कोड देखने के लिए और पहले अपने आप का प्रयास करने के सुझाव देगा।

[http://sdllivecontent.sdl.com/LiveContent/content/en-US/SDL_Tridion_2011_SPONE/concept_95D8F90693834AF089FEBCDC0347D04D][1]

या इस प्रयास करें।

RepositoryItemsFilterData filterData = new RepositoryItemsFilterData(); 
filterData.ItemTypes = new[] 
         { 
         ItemType.Schema 
         }; 
filterData.Recursive = true; 
XElement resultXml = client.GetListXml(publicationId, filterData); 

और फिर आप एक्सएमएल ऊपर से आईडी प्राप्त करने के बाद प्रत्येक स्कीमा वस्तु बना सकते हैं और जाँच करें कि क्या यह मेटाडाटा स्कीमा है की जरूरत है।

संबंधित मुद्दे