SharePoint 2010,获得用户配置文件属性的独特值?
-
16-10-2019 - |
题
SharePoint 2010中有什么方法可以在所有用户中获得属性的独特价值?例如,我想要配置文件商店中所有部门的列表。
在SQL中,我可以做
SELECT DISTINCT(PropertyVal) FROM [ProfileDB].[dbo].[UserProfileValue]
WHERE PropertyID = 14
但是访问SQL数据库当然是一个很大的禁忌,所以我想知道对象模型中是否有东西?
请注意,在SPSITE上访问用户信息列表还不够好,因为只有所有用户中只有一小部分在该列表中。我想直接从配置文件商店获得它。
我不想循环浏览userProfileManager,因为a)它是sloooow,b)需要提高权限,即使是spsecurity。
在我写一个执行此操作的计时器工作之前,还有其他方法可以做到吗?
解决方案 2
最终直接查询Active Directory,因为SharePoint 2010用户配置文件商店无法有效查询。
其他提示
据我所知,这只能通过选择字段来完成。对于像部门这样的事情,您可能必须通过配置文件进行迭代。