我在Ektron中有很多内容项,都有分配给他们的分类。我正在尝试编写一种方法,该方法将根据电子表格更新分类法,其中电子表格中的每一行都有内容项的ID以及应分配给它的更新分类。所以,我有内容ID和分类ID,但我不知道如何处理它们。
我可以使用哪种方法更改内容项的分类?
答案 0 :(得分:1)
您需要使用ContentManager类来更新给定项目的分类。
这里有一个关于如何检索已经分配的分类法的示例: https://developer.ektron.com/forums/?v=t&t=3033
我想你需要的是:
获取所有指定的分类
var contentManager = new ContentManager(ApiAccessMode.Admin);
var taxonomyDataList = contentManager.GetAssignedTaxonomyList(contentId, language);
从项目中删除这些分类法(迭代上一个列表)
contentManager.RemoveTaxonomy(contentId, taxonomyId);
分配来自excel文档的新分类。
contentManager.AssignTaxonomy(contentId, taxonomyId);
备注:强>
使用 Admin 模式实例化您的ContentManager非常重要,以便更新您系统中的任何内容,无论他们拥有哪些权限。
您需要在Web请求的上下文中执行此操作。如果您构建一个控制台应用程序并引用Ektron二进制文件,那么可能无法工作,因为许多方法都依赖于HttpContext。