2012-08-23 13 views
6

Soy bastante nuevo en el servicio central de Tridion así que esta podría ser una pregunta simple. Quiero obtener todos los esquemas de metadatos al pasar una identificación de publicación. Si alguien alguna vez ha hecho esto, responda.Obtener todos los esquemas de metadatos de una publicación

Gracias de antemano

+0

¿Qué ha intentado ya? http://mattgemmell.com/2008/12/08/what-have-you-tried/ Hay un montón de ejemplos de cómo utilizar el servicio principal para recuperar elementos de Tridion tanto en el desbordamiento de pila como en las interwebs en general. Pruebe algunos de ellos y vea cómo se ajustan a sus necesidades. Si te quedas atascado haciendo eso, haremos nuestro mejor esfuerzo para lograr que "despegues". –

Respuesta

10

Bien, aquí hay un ejemplo. GetCoreServiceClient devuelve un SessionAwareCoreServiceClient con Impersonate ya llamado para el usuario correcto.

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

voy a sugerir que usted mire código de ejemplo desde [aquí] [1] (Inicio de sesión necesario) y tratar su auto primero.

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

o probar esto.

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

Y entonces usted necesita para crear cada objeto de esquema después de obtener los identificadores XML desde arriba y comprobar si se trata de esquemas de metadatos.

Cuestiones relacionadas