Kentico:如何通过API处理内容分级?

问题描述

我已经遍历了代码和Web部件,但无法弄清楚评级是如何工作的。 我所知道的是提供的评级控制。

我想通过API显示评分历史。 我还需要允许用户使用API​​进行评分。

我可以通过查询获得文档的评级值

select Documentratings,DocumentratingValue from CMS_Document WHERE [DocumentNodeID] = 123

但是如何查看评分历史记录?

内部如何计算评分?

还涉及哪些其他表?

解决方法

在Kentico中,有两种不同类型的内容分级,均计入文档的内容分级:

  • 没有消息的评分
    • 增加等级值并直接在“文档”表中计数。
  • 带消息的等级(使用消息板功能)
    • 将具有等级的消息添加到[Board_Message]表中,并按代表[Board_Board]中存储页面的面板分组。
    • 还会增加评级值并直接在“文档”表中计数。

如果您希望拥有完整的评分历史记录,并希望能够通过API进行公开,则最好使用Message Board功能。为此,您可以查看API文档here或调查Kentico的留言板Webparts如何工作,请尝试检查:

  • CMS \ CMSModules \ MessageBoards \ Controls \ MessageBoard.ascx.cs
  • CMS \ CMSModules \ MessageBoards \ Controls \ Messages \ MessageEdit.ascx.cs(btnOk_Click事件)