【问题标题】:Sharepoint-hosted App 2013 How to I enable ratings on a custom listSharepoint-hosted App 2013 如何在自定义列表上启用评级
【发布时间】:2015-12-21 16:08:34
【问题描述】:

在我发布这个问题之前,我已经做了一些研究以找到解决方案......没有运气

这是我找到的一些项目的链接

document rating in SharePoint 2013 hosted app

http://www.wictorwilen.se/Post/How-to-provision-SharePoint-2010-Rating-columns-in-Content-Types.aspx

我遇到的问题是我有一个自定义列表,它是 sharepoint 应用程序的一部分,需要添加 sharepoint 评级系统

当我将 wictorwilen 中建议的列添加到列表 schema.xml 中时,我得到的只是列表中的几个数字字段。

如何在应用网站集和/或列表实例中启用“评分”功能?

这是 listInstance 架构 xml

<ContentTypes>
  <ContentType ID="0x0100BE18ADD378B44660BBA9D7BDA8D445DC" Name="StoryBoard" Group="Custom Content Types" Description="StoryBoard Content Type" Inherits="False" Version="0">
    <FieldRefs>
      <FieldRef ID="{10aee775-aefb-4cf6-9bbc-5012504b929e}" DisplayName="Story Title" Required="TRUE" Name="StoryTitle" />
      <FieldRef ID="{7DF0EBE6-D778-42C1-9687-C5058E5F09AA}" DisplayName="Story Image" Required="FALSE" Name="StoryImage" />
      <FieldRef ID="{FCA44B87-91A7-4B19-B920-A28B2190DCDA}" DisplayName="Publish Date" Required="TRUE" Name="PublishDate" />
      <FieldRef ID="{D36C06FE-0242-48EC-AE60-0910D759EAA0}" DisplayName="On Behalf Of" Required="TRUE" Name="OnBehalfOf" />
      <FieldRef ID="{C56AABCD-03A9-4572-A716-125414AEEB6D}" DisplayName="Story" Required="TRUE" Name="Story" />
      <FieldRef ID="{5a14d1ab-1513-48c7-97b3-657a5ba6c742}" Name="AverageRating" />
      <FieldRef ID="{b1996002-9167-45e5-a4df-b2c41c6723c7}" Name="RatingCount" />
    </FieldRefs>
  </ContentType>
</ContentTypes>
<Fields>
  <Field ID="{10aee775-aefb-4cf6-9bbc-5012504b929e}" Name="StoryTitle" DisplayName="Story Title" Type="Text" Required="TRUE" Group="Custom Site Columns"></Field>
  <Field ID="{7DF0EBE6-D778-42C1-9687-C5058E5F09AA}" Name="StoryImage" DisplayName="Story Image" Type="URL" Required="FALSE" Group="Custom Site Columns"></Field>
  <Field ID="{FCA44B87-91A7-4B19-B920-A28B2190DCDA}" Name="PublishDate" DisplayName="Publish Date" Type="DateTime" Required="TRUE" Group="Custom Site Columns"></Field>
  <Field ID="{D36C06FE-0242-48EC-AE60-0910D759EAA0}" Name="OnBehalfOf" DisplayName="On Behalf Of" Type="User" Required="FALSE" Group="Custom Site Columns"></Field>
  <Field ID="{C56AABCD-03A9-4572-A716-125414AEEB6D}" Name="Story" DisplayName="Story" Type="Note" Required="FALSE" RichText="TRUE" RichTextMode="FullHtml" Group="Custom Site Columns"></Field>
  <Field ID="{5a14d1ab-1513-48c7-97b3-657a5ba6c742}" Name="AverageRating" Type="Number"></Field>
  <Field ID="{b1996002-9167-45e5-a4df-b2c41c6723c7}" Name="RatingCount" Type="Number"></Field>
</Fields>

【问题讨论】:

    标签: xml sharepoint sharepoint-2013 hosted-app


    【解决方案1】:

    沿着这些字段,列表根文件夹需要有一个属性,“Ratings_VotingExperience”设置为“Ratings”或“Likes”。 这是使用 C# CSOM 的代码。

    list.RootFolder.Properties["Ratings_VotingExperience"] = "Ratings";
    

    另一种选择是完全使用 CSOM,无需自定义 Schema.xml。 Here 是一种在列表上启用评级的经过测试的方法。您必须将代码从 C# 转换为 Javascript,但这很简单。

    基本步骤是:

    1. 添加评级字段
    2. 在根文件夹(评分/喜欢)上设置属性
    3. 为评分或喜欢添加视图字段。

    【讨论】:

    • 我要看看这个。安装应用程序时,我需要对库进行更改...尝试在 javascript 中实现时有点棘手
    • 我推荐以下方法。在应用的起始页中添加功能。配置库后,将自定义值添加到 Web 属性的包中。每次访问起始页时,只需检查属性包即可。根据您的应用程序的设置方式,可能会有更好的方法,但这总是可行的。
    猜你喜欢
    • 2014-12-10
    • 1970-01-01
    • 2014-12-13
    • 2013-09-28
    • 1970-01-01
    • 2014-02-28
    • 1970-01-01
    • 2021-01-14
    • 2013-09-24
    相关资源
    最近更新 更多