Don't like ads? PRO users don't see any ads ;-)
Guest

Untitled

By: a guest on Apr 24th, 2012  |  syntax: None  |  size: 1.37 KB  |  hits: 27  |  expires: Never
download  |  raw  |  embed  |  report abuse  |  print
Text below is selected. Please press Ctrl+C to copy to your clipboard. (⌘+C on Mac)
  1. Tridion Core service - working with a Hierarchical Taxonomy
  2. CoreService2010Client client = new CoreService2010Client();  
  3. XElement xmlCategoryKeywords = client.GetListXml(category.Id,
  4.                                                  new KeywordsFilterData());
  5.        
  6. var categoryKeywords = xmlCategoryKeywords.Elements().Select(element =>
  7.     element.Attribute("ID").Value).Select(id => (KeywordData)client.Read(id, null)
  8. );
  9. foreach (KeywordData keyword in categoryKeywords)
  10. {
  11.     Console.WriteLine("t Keyword ID={0}, Title={1}", keyword.Id, keyword.Title);
  12. }
  13.        
  14. CoreService2010Client client = new CoreService2010Client("basicHttp_2010");
  15.  
  16. KeywordsFilterData keywordsDataFilter = new KeywordsFilterData()
  17. {
  18.     BaseColumns = ListBaseColumns.IdAndTitle,
  19.     IsRoot = true
  20. };
  21.  
  22. UsingItemsFilterData usingItemsFilter = new UsingItemsFilterData()
  23. {
  24.     BaseColumns = ListBaseColumns.IdAndTitle,
  25.     ItemTypes = new[] { ItemType.Keyword },
  26.     InRepository = new LinkToRepositoryData() { IdRef = "tcm:0-1-1" }
  27. };
  28.  
  29. XElement parents = client.GetListXml("tcm:1-272-512", keywordsDataFilter);
  30.  
  31. foreach (XElement parent in parents.Descendants())
  32. {
  33.     // Do something with the parent (top level) KW
  34.  
  35.     XElement children = client.GetListXml(parent.Attribute("ID").Value, usingItemsFilter);
  36.  
  37.     foreach (XElement child in children.Descendants())
  38.     {
  39.         // Do something with the child KW
  40.     }
  41. }