如何:确定网站中某用户是其成员的所有访问群体

上次修改时间: 2010年1月27日

适用范围: SharePoint Server 2010

此示例演示如何使用访问群体对象模型来确定给定的网站中某用户是其成员的所有访问群体。请注意:结果包括所有 Microsoft Exchange 通讯组列表 (DL)、SharePoint 组、全局访问群体和基于规则的访问群体。

AudienceType 枚举表示用户所属的访问群体的类型。枚举值可以是:

  • DL

  • Global

  • SharePointGroup

使用此示例之前,请用实际的值替换 servername 和其他占位符字符串。此外,将下列引用添加到您的 Microsoft Visual Studio 项目中:

  • Microsoft.Office.Server

  • Microsoft.Office.Server.UserProfiles

  • 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"))
                {
                    SPServiceContext context = SPServiceContext.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();
            }

        }
    }

}

请参阅

其他资源

使用访问群体设定内容