Partager via


AudienceManager - Classe

Représente le point d'entrée pour les classes de l'audience.

Hiérarchie d’héritage

System.Object
  Microsoft.Office.Server.Audience.AudienceManager

Espace de noms :  Microsoft.Office.Server.Audience
Assembly :  Microsoft.Office.Server.UserProfiles (dans Microsoft.Office.Server.UserProfiles.dll)

Syntaxe

'Déclaration
<SharePointPermissionAttribute(SecurityAction.InheritanceDemand, ObjectModel := True)> _
<SharePointPermissionAttribute(SecurityAction.Demand, ObjectModel := True)> _
Public Class AudienceManager _
    Implements IRuntimeFilter2, IRuntimeFilter
'Utilisation
Dim instance As AudienceManager
[SharePointPermissionAttribute(SecurityAction.InheritanceDemand, ObjectModel = true)]
[SharePointPermissionAttribute(SecurityAction.Demand, ObjectModel = true)]
public class AudienceManager : IRuntimeFilter2, 
    IRuntimeFilter

Remarques

La classe AudienceManager est le point d'entrée pour la fonctionnalité audience dans Microsoft SharePoint Server 2010. Il fournit une implémentation de IRuntimeFilter, qui permet aux composants WebPart et autres contenus être ciblés à une audience spécifique. La classe AudienceManager prend en charge l'exécution des fonctionnalités telles que la récupération des listes d'audience à laquelle l'utilisateur appartient. Une fois que vous créez une instance de la classe AudienceManager , vous pouvez récupérer les types de participants individuels, des listes des audiences et des listes d'utilisateurs qui sont associés à une audience.

Il existe plusieurs règles d'authentification par défaut et les étendues implémentées pour l'objet AudienceManager :

  • Membres du groupe administrateur de site pour SharePoint Server peuvent afficher et modifier les audiences associés à un site portail.

  • Les membres du groupe de sites Administrateur peuvent également afficher les informations relatives aux audiences pour d'autres sites de portail avec lesquels ils partagent des services. Les services partagés sont portail qui sont partagés entre des batteries de serveurs. Les services sont gérées centralement à partir d'un serveur unique pour deux ou plusieurs batteries de serveurs.

  • Les membres du groupe de sites Administrateur du site portail parent peuvent répertorier et afficher des informations d'audience pour les sites portail enfants. Cette information est en lecture seule.

  • Un membre du groupe de sites lecteur ou collaborateur peut accéder uniquement la liste des audiences auquel il appartient. Ces informations sont renvoyées par la méthode surchargée GetUserAudienceIDs .

Exemples

Cet exemple de code montre comment créer une audience basée sur des règles, pour laquelle vous pouvez cibler du contenu.

Notes

L'audience est créée uniquement ici ; Il n'est pas compilée et règles n'ont pas été ajoutés. Vous pouvez ajouter des règles à l'aide de l'interface utilisateur ou du modèle objet et ensuite compiler l'audience à l'aide de l'interface utilisateur. Vous pouvez également compiler les audiences à l'aide de la classe AudienceJob .

Remplacez servername et autres chaînes par des valeurs réelles avant d'exécuter l'exemple de code. Ajoutez également les références suivantes dans votre projet 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;

namespace AudienceConsoleApp
{
    class Program
    {
        static void Main(string[] args)
        {
            try
            {
                using (SPSite site = new SPSite("https://servername"))
                {
                    SPServiceContext context = SPServiceContext.GetContext(site);
                    AudienceManager audManager = new AudienceManager(context);

                    AudienceCollection ac = audManager.Audiences;
                    Audience a = null;
                    string sAudName = "Customer Connection";
                    string sDescription = "Members of the Customer Connection v-team";

                    try
                    {
                        a = ac.Create(sAudName, sDescription);
                    }
                    catch (AudienceDuplicateNameException e)
                    {
                        //Your exception handling code here
                    }
                    catch (AudienceException e1)
                    {
                        //Your exception handling code here
                    }
                }

            }
            catch (Exception exception)
            {
                Console.WriteLine(exception.ToString());
                Console.Read();
            }

        }
    }
}
Imports System
Imports System.Collections.Generic
Imports System.Text
Imports Microsoft.SharePoint.Administration
Imports Microsoft.Office.Server.Audience
Imports Microsoft.SharePoint
Imports Microsoft.Office.Server
Imports System.Web

Namespace AudienceConsoleApp
    Module Program
        Sub Main(ByVal args() As String)
            Try
                Using site As New SPSite("https://servername")
                    Dim context As SPServiceContext = SPServiceContext.GetContext(site)
                    Dim audManager As New AudienceManager(context)

                    Dim ac As AudienceCollection = audManager.Audiences
                    Dim a As Audience = Nothing
                    Dim sAudName As String = "Customer Connection"
                    Dim sDescription As String = "Members of the Customer Connection v-team"

                    Try
                        a = ac.Create(sAudName, sDescription)
                    Catch e As AudienceDuplicateNameException
                        'Your exception handling code here
                    Catch e1 As AudienceException
                        'Your exception handling code here
                    End Try
                End Using

            Catch exception As Exception
                Console.WriteLine(exception.ToString())
                Console.Read()
            End Try

        End Sub
    End Module
End Namespace

Cohérence de thread

Tous les membres statique (Partagé dans Visual Basic)s publics de ce type sont thread-safe. Cela n’est pas garanti pour les membres d’instance.

Voir aussi

Référence

AudienceManager - Membres

Microsoft.Office.Server.Audience - Espace de noms