SharePoint 2013 开发——其他社交功能

简介: 博客地址:http://blog.csdn.net/FoxDave上一篇讲了如何获取用户配置文件的相关属性,它属于SharePoint 2013社交功能的一个小的构成部分。

博客地址:http://blog.csdn.net/FoxDave

上一篇讲了如何获取用户配置文件的相关属性,它属于SharePoint 2013社交功能的一个小的构成部分。社交功能是SharePoint 2013改进的一大亮点。可以在现有网站上开启社交功能或者新建一个专门用于社交用途的社区网站,社交功能包括关注(人或内容)、艾特@、#等功能、有清晰的用户积分制度等等。由于工作中不会有太多关于这方面的开发需求,并且个人觉得这部分做得挺不错,基本的需求应该是够用了(强大的或许就不在SharePoint上了微笑),所以本篇只会用两个小例子展示一下如何用客户端对象模型与SharePoint社交功能进行交互来说明SharePoint 2013社交功能的开发,当然不仅限于客户端对象模型,JSOM和REST也可以做类似的事情。

包括之前提到的用户配置文件相关的开发,在用客户端对象模型做社交相关功能的代码交互开发时,需要引入Microsoft.SharePoint.Client、Microsoft.SharePoint.ClientRuntime和Microsoft.SharePoint.Client.UserProfiles这三个程序集,并在代码文件头部增加如下两个引用:

using Microsoft.SharePoint.Client;
using Microsoft.SharePoint.Client.Social;

首先构建上下文对象:

ClientContext clientContext = new ClientContext("<你的网站URL>");

在Microsoft.SharePoint.Client.Social这个命名空间下,有SocialFeedManager、SocialFeedOptions、SocialPostCreationData和SocialFollowingManager等对象模型可供我们使用,分别跟订阅、回帖、关注等有关。

获取指定用户的动态:

SocialFeedManager feedManager = new SocialFeedManager(clientContext);
            SocialFeedOptions feedOptions = new SocialFeedOptions();
            feedOptions.MaxThreadCount = 10;
            ClientResult<SocialFeed> feed = feedManager.GetFeedFor("<指定的用户>", feedOptions);
            clientContext.ExecuteQuery();
            for (int i = 0; i < feed.Value.Threads.Length; i++)
            {
                SocialThread thread = feed.Value.Threads[i];
                string postText = thread.RootPost.Text;
                Console.WriteLine("\t" + (i + 1) + ". " + postText);
            }

获得指定用户关注和被关注的人:

static void Main(string[] args)
        {
            string serverUrl = "<你的网站URL>";
            string targetUser = "<指定的用户>";
            ClientContext clientContext = new ClientContext(serverUrl);
            SocialFollowingManager followingManager = new SocialFollowingManager(clientContext);
            SocialActorInfo actorInfo = new SocialActorInfo();
            actorInfo.AccountName = targetUser;
            ClientResult<int> followedCount = followingManager.GetFollowedCount(SocialActorTypes.Users);
            ClientResult<SocialActor[]> followedResult = followingManager.GetFollowed(SocialActorTypes.Users);
            ClientResult<SocialActor[]> followersResult = followingManager.GetFollowers();
            clientContext.ExecuteQuery();
            Console.WriteLine("当前用户关注的人数: ({0})", followedCount.Value);
            IterateThroughPeople(followedResult.Value);
            Console.WriteLine("\n谁关注此用户:");
            IterateThroughPeople(followersResult.Value);
            Console.ReadKey();
        }

        static void IterateThroughPeople(SocialActor[] actors)
        {
            foreach (SocialActor actor in actors)
            {
                Console.WriteLine("  - {0}", actor.Name);
                Console.WriteLine("\t链接: {0}", actor.PersonalSiteUri);
                Console.WriteLine("\t头像: {0}", actor.ImageUri);
            }
        }

更多内容请参考微软MSDN文档,写得还是很详细清晰的,如果我们在工作中遇到了相关内容的任务,能够提供很有力的参考和帮助。

相关文章
|
4月前
|
机器学习/深度学习 人工智能 搜索推荐
盘点五款功能全面的移动端CRM
在快节奏的商业环境中,移动CRM系统为企业提供高效灵活的管理方案。销售人员可随时随地联系客户、更新信息,管理层则实时掌握团队进度。市场上的产品各具特色,例如销售易CRM凭借出色的移动端体验和技术集成获得高度认可;百会CRM提供个性化界面及全面客户管理功能;悟空CRM强调以客户为中心的理念来提升销售和服务质量;Zoho CRM支持离线操作并通过AI助手增强团队协作;纷享销客CRM则通过行动轨迹追踪等工具提高外勤效率。这些移动CRM系统正逐步成为企业不可或缺的工具。
盘点五款功能全面的移动端CRM
|
4月前
|
搜索推荐 物联网 应用服务中间件
【Azure 应用服务】Azure SignalR 是否可以同时支持近十万人在线互动
【Azure 应用服务】Azure SignalR 是否可以同时支持近十万人在线互动
语音软件源码开发搭建,好友管理功能剖析
我们就成功实现了语音软件源码好友管理功能,这一功能对于语音软件源码平台是非常重要,语音软件源码好友管理功能可以为我们的社交增添一份坚实的力量。
语音软件源码开发搭建,好友管理功能剖析
视频交友源码开发搭建平台用户资料功能:小功能有大用处!
视频交友源码平台用户资料功能不仅仅对于视频交友平台是重要的,它对于很多源码搭建的平台都是非常重要的,这样的源码功能还有很多,我会为大家讲解,喜欢的可以留个关注来问我。
视频交友源码开发搭建平台用户资料功能:小功能有大用处!
|
数据可视化 JavaScript Windows
SharePoint 2010 文档管理系列
  前言,这是自己第一次写一个系列的文档,本来想使用SharePoint 2013版本,但是碍于SharePoint 2013对于硬件要求过高,自己的笔记本无法承受,所以退而求其次选择了在SharePoint 2010版本上做文档管理的Demo。
983 0
|
数据库 Windows SQL