我怎么能写这个Kentico分层转换?

时间:2015-05-17 03:54:34

标签: nested hierarchy transformation kentico

我在Kentico 8.2中有一个页面,它应该显示一个组织的委员会列表。每个委员会的领域是"委员会名称","委员会概述"和"委员会主席&#34 ;;但是,我还想列出每个委员会特有的组织会议记录。例如,某些会议可能同时具有特定于委员会的通用会议记录和会议记录。我想我会将所有会议纪要存储在一个通用的#34; Meeting"页面类型,代表一般会议。我怎样才能编写转换或一系列转换来创建以下输出:

  • CommitteeName
    • CommitteeChairs
    • 委员会概况
    • [委员会名称] [MeetingName]会议纪要
      • 有多个会议可以存储委员会会议记录。
      • 并非所有会议都有委员会会议记录

当前"页面类型"的示例层次结构:

  • 委员会
    • CommitteeName
    • CommitteeOverview
    • CommitteeChairs
  • 会议
    • MeetingName
    • MeetingDate
    • MeetingAgenda
    • MeetingMinutes
    • [CommitteeName]分钟
      • (每个会议都有多个可以存储会议记录的委员会)

此外,哪个网络部分最适合我想要完成的任务?

1 个答案:

答案 0 :(得分:0)

如果树的结构使得会议记录文件是委员会文件的直接子项,那么我将使用&#34;通用查看器&#34;网页部分。然后我将Path属性设置为包含所有委员会的父文档(例如/committees/%)。然后,我将设置一个分层转换,其中包含两个项目转换,每个页面类型都有一个符合您要求的相应标记。在委员会页面类型的项目转换中,您将根据{{3}插入要在其中列出会议的子级占位符(ASCX样式为<cms:SubLevelPlaceHolder runat="server" ID="plcSub" />,文本样式转换为{^SubLevelPlaceHolder^}) }。

如果树的结构不那么简单,您可能需要编写自定义查询来获取所需的数据。如果是这种情况,您将需要编写查询,以便它创建您计划在转换中输出的字段的并集。它还需要包括项目ID的列,父ID(委员会为空,分钟委员会的ID)和级别(委员会为0,分钟为1)。