我有一个运行 Ektron v8.7 sp2 的站点。有一个包含库项目的分类,并且这些库项目具有分配给它们的元数据。我一直在尝试找到一种有效的方法,可以从特定分类法中获取所有图书馆项目及其相关元数据。
- FrameworkAPI 中的
ContentManager
类不返回库项。 - FrameworkAPI 中的
LibraryManager
类有两种获取单个项目的方法,但这些方法需要对分类中的每个项目进行 API 调用,这看起来效率不高。
LibraryManager.GetItem()
- 返回带有 MetaData (Ektron.Cms.ContentMetaData[]
) 和 Taxonomies (Ektron.Cms.TaxonomyBaseData[]
) 填充的 LibraryDataLibraryManager.GetLibraryItemByContentId()
- 返回 LibraryData 但 MetaData 和 Taxonomies 均为空
- 该类
LibraryManager
也有一个GetList()
方法,但它不符合我的需求:- 它的标准参数不允许指定分类 id。
- 如果我已经有一个库项目 ID 列表,则无法指定我希望该方法返回元数据(就像 ContentManager 上的那样)。
我更喜欢通过框架 API 获取数据的方法,但我也很欣赏使用 Ektron 遗留 API 的任何东西。数据在那里,我可以得到它,但我正在寻找一种有效的方法来做到这一点。