如何:确定网站中某用户是其成员的所有访问群体
此示例演示如何使用访问群体对象模型来确定给定的网站中某用户是其成员的所有访问群体。请注意:结果包括所有 Microsoft Exchange 通讯组列表 (DL)、SharePoint 组、全局访问群体和基于规则的访问群体。
AudienceType 枚举表示用户所属的访问群体的类型。枚举值可以是:
DL
Global
SharePointGroup
使用此示例之前,请用实际的值替换 servername 和其他占位符字符串。此外,将下列引用添加到您的 Microsoft Visual Studio 项目中:
Microsoft.Office.Server
Microsoft.SharePoint
System.Web
示例
using System;
using System.Collections.Generic;
using System.Text;
using Microsoft.SharePoint.Administration;
using Microsoft.Office.Server.Audience;
using Microsoft.SharePoint;
using Microsoft.Office.Server;
using System.Web;
using System.Collections;
namespace AudienceConsoleApp
{
class Program
{
static void Main(string[] args)
{
try
{
using (SPSite site = new SPSite("https://servername"))
{
ServerContext context = ServerContext.GetContext(site);
AudienceManager AudMgr = new AudienceManager(context);
SPWeb web = site.AllWebs[0];
try
{
ArrayList audienceIDNames = AudMgr.GetUserAudienceIDs("domainname\\username", true, web);
ArrayList audienceNames = new ArrayList();
for (int i = 0; i < audienceIDNames.Count; i++)
{
AudienceNameID arrTemp = (AudienceNameID)audienceIDNames[i];
audienceNames.Add(arrTemp.AudienceName);
Console.WriteLine(audienceNames[i].ToString());
}
Console.Read();
}
catch (AudienceException e)
{
//Your exception handling code here
}
}
}
catch (Exception exception)
{
Console.WriteLine(exception.ToString());
Console.Read();
}
}
}
}