3

私は、Categoriesdataを使用してTridionからすべてのカテゴリを取得する方法を探していました。以下のように試しましたが、エラーが表示されます。

CoreServiceSession client = new CoreServiceSession();
SessionAwareCoreServiceClient csClient = client.GetClient();
ReadOptions readoption = new ReadOptions();

CategoriesFilterData filter = new CategoriesFilterData();
XElement xml = csClient.GetSystemWideList(filter);
4

1 に答える 1

9

GetSystemWideListの代わりにGetListXmlを使用し、カテゴリを取得するパブリケーションIDを指定する必要があります。

CategoriesFilterData filterData = new CategoriesFilterData();
XElement resultXml = client.GetListXml(publicationId, filterData);

GetSystemWideListは通常、PublicationTargetsやMultimediaTypesのように、システム全体で1つのパブリケーションにバインドされていないものを取得するためのものです。

ただし、次のように検索クエリを試すこともできます。

SearchQueryData filter = new SearchQueryData(); 
filter.ItemTypes = new ItemType[] { ItemType.Category }; 

IdentifiableObjectData[] results = client.GetSearchResults(filter);
foreach (IdentifiableObjectData obj in results)
{
    Console.WriteLine(String.Format("{0} - {1}", obj.Title, obj.Id));
}
于 2012-08-23T06:24:12.233 に答える