Microsoft.Office.Server.Audience 命名空间

Contains classes that create audiences and target data to a specific audience.

In addition to rules-based audiences, you can implement targeting based on SharePoint groups and distribution list (DL) memberships. You can also target content to the list item level, rather than just to the list level.

备注

You can use a web service that finds all SharePoint sites that are targeted to a particular user. For more information, see How to: Use the Published Links Web Service.

Example 1: Getting the AudienceManager Object in SharePoint Server

The AudienceManager object is the top-level object in the Audience object model. You can get an AudienceManager object by using the syntax shown in the following code example. Replace servername with an actual value and add any code that you might need before using this example.

using (SPSite site = new SPSite("https://servername"))
 {
   ServerContext context = ServerContext.GetContext(site);
   AudienceManager audManager = new AudienceManager(context);
   //your code here
 }

Example 2: Personalized Portals

The following code example shows how to target list items to a particular audience.

    AudienceLoader audienceLoader = AudienceLoader.GetAudienceLoader();
   foreach (SPListItem listItem in list.Items)
   {
    // Get roles the list item is targeted to.
     string audienceFieldValue = (string)listItem[k_AudienceColumn];

    // Quickly check if the user belongs to any of those roles.
     if (AudienceManager.IsCurrentUserInAudienceOf(audienceLoader, audienceFieldValue, false))
                {
                    // is a member
                }
                else
                {
                    // not a member
                }
  }

  说明
公共类 Audience 表示 SharePoint 网站上的读者。
公共类 AudienceAccountNameNotResolvedException 表示当Audience帐户名称无效时引发的异常。
公共类 AudienceADImportException 表示从 Microsoft Active Directory 目录服务中获取数据时,发生错误时引发的异常。
公共类 AudienceArgumentException 表示无效的数据提供给的AudienceCollectionAudienceSiteCollection类时引发的异常。
公共类 AudienceCollection 表示集合的门户网站的访问者。
公共类 AudienceCollection.AudienceEnumerator 代表AudienceAudienceCollection对象中的对象的枚举数。
公共类 AudienceConnectionException 表示连接到数据库时,发生错误时引发的异常。
公共类 AudienceDataValueOutOfRangeException 表示一个数据值超出范围时引发的异常。
公共类 AudienceDataWrongFormatException 表示当Audience数据格式错误时引发的异常。
公共类 AudienceDuplicateNameException 表示当用户尝试创建或重命名数据库中已存在的名称的访问群体时引发的异常。
公共类 AudienceException 代表观众异常的基类。
公共类 AudienceExecutionException 表示执行用户操作,如创建、 删除或更新访问群体时,发生错误时引发的异常。
公共类 AudienceGroupOperationException 表示在执行一组操作时在观众中遇到错误时引发的异常。
公共类 AudienceInCompilationException 当用户试图同时访问群体规则正在编译更改访问群体数据时,将引发异常。
公共类 AudienceJob 提供一种方法来开始和停止完全和增量访问群体搜集
公共类 AudienceLeftContent 表示操作数内容的访问群体规则。
公共类 AudienceManager 表示访问者类的入口点。
公共类 AudienceNameDescriptionLengthException 表示如果访问者名称的长度超过 50 个字符,或者说明超过 254 个字符时引发的异常。
公共类 AudienceNameID 表示访问者,例如名称和 GUID,有关的信息的概要以及观众是否仍然有效。
公共类 AudienceNoContentException 表示AudienceManager对象在检索数据时遇到错误时引发的异常。
公共类 AudienceNotExistException 实现时在数据库中找不到访问者引发的异常。
公共类 AudienceOperator 表示一个观众运算符的定义。
公共类 AudienceOperatorException 表示由Audience类和AudienceManager类规则定义中遇到操作员错误引发的异常。
公共类 AudienceOwnerAccountNameLengthException 表示的所有者帐户名长度超过 400 个字符时引发的异常。
公共类 AudienceRuleComponent 代表在访问群体中的一条规则。
公共类 AudienceRuleLeftContentException 表示访问群体规则的操作数部分中遇到错误时引发的异常。
公共类 AudienceRuleRightContentException 代表AudienceRuleComponent类在规则定义中遇到错误时引发的异常。
公共类 AudienceSite 表示用于访问与门户网站相关联的访问群体的入口点。
公共类 AudienceSiteCollection 表示集合的特定访问群体与相关联的门户网站。
公共类 AudienceSiteCollection.AudienceSiteEnumerator 枚举中的AudienceSiteCollection类的网站。
公共类 AudienceSiteInfo 表示除了与门户网站相关联的Microsoft.Office.Server.ServerContext对象的AudienceSite类的特定实例的信息。
公共类 AudienceWrongAccountNameFormatException 表示访问群体规则中遇到不正确的帐户名格式时引发的异常。
公共类 EmptyToolPaneControl 此类及其成员仅供内部使用,不适合在您的代码中使用。
公共类 MembershipInfo 存储有关用户或组从 Microsoft Active Directory 目录服务的信息。
公共类 UserInfo 表示来自用户的用户配置文件,如电子邮件地址和名称的用户信息。

枚举

  枚举 说明
公共枚举 AudienceAccessRights 表示一个可以对访问者的访问权限。
公共枚举 AudienceGroupOperation 指定访问群体,有多个规则可执行的操作。
公共枚举 AudienceJobReturnCode 表明RunAudienceJob方法调用的状态。
公共枚举 AudienceType 表示类型的访问群体。