如何在Tridion 2011 CoreService中使用ClassifiedItemsFilterData文件夹?

Rei*_*Wit 5 tridion tridion-2011

我正在重写.NET后端应用程序,以便它使用Tridion 2011 CoreService.有一部分它会在Tridion中获得一个使用特定关键字的文件夹.在当前的设置中,这是通过在关键字本身上调用方法'GetListClassifiedItems'来完成的,但我想如何使用CoreService执行此操作?

CoreService API中有一个ClassifiedItemsFilterData,但我该如何使用它?

我试过这段代码:

ClassifiedItemsFilterData filter = new ClassifiedItemsFilterData()
{
    ItemTypes = new ItemType[] { ItemType.Folder }
};

XElement list = client.GetListXml("tcm:113-363331-1024", filter);
Run Code Online (Sandbox Code Playgroud)

但它只返回关键字本身,URI tcm:113-363331-1024,而不是使用它分类的文件夹.

如果我也将组件ItemType添加到过滤器中,我将获得已使用此keywordk分类的所有组件,但仍然不是该文件夹.

我如何获得该文件夹?

Fra*_*len 5

当我运行类似的测试时,我的结果中确实得到了文件夹和组件

var filter = new ClassifiedItemsFilterData();
filter.ItemTypes = new ItemType[] {ItemType.Folder};
var transactions = client.GetListXml("tcm:1-134-1024", filter);
Console.WriteLine(transactions.ToString());
Run Code Online (Sandbox Code Playgroud)

我在元数据架构中添加了一个关键字字段,并将其与文件夹相关联.你这样做的方式是否一样?

当我从上面的代码中删除项目类型过滤器时,我将所有组件和文件夹分类为该关键字,但我没有得到关键字本身.这些都是我期望的ClassifiedItemsFilterData工作方式,因此我们应该专注于您的方案中的不同之处.

  • 我正在尝试重现我得到的结果,但我不能.它现在似乎正常工作,在我的代码中也是如此.我一定错过了我之前的代码中的一些逻辑错误...对不起,伙计们,感谢你们的时间! (2认同)