博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
获取 SharePoint 2010 中所有的User Profile Service Application
阅读量:6174 次
发布时间:2019-06-21

本文共 2155 字,大约阅读时间需要 7 分钟。

  SharePoint中每一类Service都有一个唯一的Guid进行相应的标识,并且其下的Application会继承这个Guid,名曰:ApplicationClassId。因此,可以根据ApplicationClassId去确认Application属于哪一类Service。例如User Profile Service下所有的Application的ApplicationClassId都为:e12223eb-f793-4e73-9f5b-3bfcc06ed092。

  其他的ApplicationClassId也可以用编程的方式获得:

//遍历所有的service            foreach (SPService service in SPFarm.Local.Services)            {                //遍历该service下所有的application                foreach (SPServiceApplication app in service.Applications)                {                    //app.ApplicationClassId                }            }

  因此可以用去比较此Application的ApplicationClassId,以确定此Application是否属于User Profile Service。

  

  不过还有另外一种方式:先确定Service的类别,然后直接遍历该Service下所有的Application

  具体步骤:在确保开启User Profile Service的情况下,可以通过SPFarm.Local.Services获取所有的Service,然后对所有的Service进行遍历,当获取到User Profile Service时,可以对该Service下的所有Application进行遍历。

请看如下代码:

public Dictionary
GetUserProfile() { Dictionary
userProfileApps = new Dictionary
(); try { //遍历所有的service foreach (SPService service in SPFarm.Local.Services) { if (service.TypeName.Equals("User Profile Service", StringComparison.OrdinalIgnoreCase)) { //遍历该service下所有的application foreach (SPServiceApplication app in service.Applications) { //当前farm下面可用的UserProfile Service Application userProfileApps.Add(app.DisplayName, app.ID); } } } } catch (Exception ex) { Logger.Error("Error occurred while get user profile, error message: {0}", ex.ToString()); } return userProfileApps; }

当然想要遍历其他Service,只需要在代码中修改service 的 TypeName。

 

为了获取 SharePoint 2010 中所有service TypeName的信息,可以进行如下三步走:

  1. farm administrator登录到SharePoint 2010的server中
  2. 打开 SharePoint 2010 Management Shell
  3. 输入此命令行: Get-SPServiceInstance

这个命令行将会显示所有service instance的 status 和 id :

 

定位好了User Profile Service Application后,便可以获取此Application下的所有User Profile信息,完成所谓的User Profile的增删改查操作。

 

转载地址:http://adqba.baihongyu.com/

你可能感兴趣的文章
hyperledger v1.0.5 区块链运维入门(一)
查看>>
Mybatis-mapper-xml-基础
查看>>
5. GC 调优(基础篇) - GC参考手册
查看>>
Windows 7 XP 模式颜色质量只有16位的解决
查看>>
SonicWall如何安全模式升级防火墙
查看>>
Linux IPC实践(3) --具名FIFO
查看>>
从Atlas到Microsoft ASP.NET AJAX(6) - Networking, Application Services
查看>>
成长之路---写好一个类
查看>>
读取 java.nio.ByteBuffer 中的字符串(String) 写入方式flash.utils.ByteArray.writeUTF
查看>>
范围管理和范围蔓延
查看>>
android90 bind方式启动服务service调用service里的方法
查看>>
前端开发薪资之各地区对比(图文分析)(share)
查看>>
对做“互联网产品”的一些想法
查看>>
SPI协议及其工作原理浅析【转】
查看>>
原生js编写的安全色拾色器
查看>>
iOS:VFL语言
查看>>
让时间处理简单化 【第三方扩展类库org.apache.commons.lang.time】
查看>>
用scikit-learn学习DBSCAN聚类
查看>>
Linux设备模型(热插拔、mdev 与 firmware)【转】
查看>>
Android开发笔记第二篇(Android 手机概念)
查看>>