Compartir a través de


Clase AudienceManager

Representa el punto de entrada para las clases de la audiencia.

Jerarquía de la herencia

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

Espacio de nombres:  Microsoft.Office.Server.Audience
Ensamblado:  Microsoft.Office.Server.UserProfiles (en Microsoft.Office.Server.UserProfiles.dll)

Sintaxis

'Declaración
<SharePointPermissionAttribute(SecurityAction.InheritanceDemand, ObjectModel := True)> _
<SharePointPermissionAttribute(SecurityAction.Demand, ObjectModel := True)> _
Public Class AudienceManager _
    Implements IRuntimeFilter2, IRuntimeFilter
'Uso
Dim instance As AudienceManager
[SharePointPermissionAttribute(SecurityAction.InheritanceDemand, ObjectModel = true)]
[SharePointPermissionAttribute(SecurityAction.Demand, ObjectModel = true)]
public class AudienceManager : IRuntimeFilter2, 
    IRuntimeFilter

Comentarios

La clase AudienceManager es el punto de entrada para la función de la audiencia en Microsoft SharePoint Server 2010. Proporciona una implementación de IRuntimeFilter, que permite a los elementos web y otros contenidos al que va dirigido a una audiencia específica. La clase AudienceManager es compatible con la funcionalidad en tiempo de ejecución como la recuperación de listas de la audiencia a la que pertenece el usuario. Después de crear una instancia de la clase AudienceManager , puede recuperar tipos de destinatarios individuales, listas de audiencias y listas de usuarios que están asociados a una audiencia.

Hay varias reglas de autenticación predeterminado y ámbitos implementados para el objeto AudienceManager :

  • Los miembros del grupo de sitio Administrador de SharePoint Server pueden ver y modificar las audiencias asociadas a un sitio de portal.

  • Los miembros del grupo de sitio Administrador también pueden ver información de audiencia para otros sitios de portal con los que compartan los servicios. Los servicios compartidos son servicios del portal que se comparten entre conjuntos de servidores. Los servicios se administran de forma centralizada desde un único servidor para dos o más conjuntos de servidores.

  • Los miembros del grupo de sitio Administrador del sitio de portal principal pueden enumerar y ver la información de audiencia de sitios de portal secundarios. Esta información es de sólo lectura.

  • Un miembro del grupo de sitio Lector o colaborador puede tener acceso a sólo una lista de las audiencias a las que pertenece. Esta información es devuelto por el método sobrecargado GetUserAudienceIDs .

Ejemplos

Este ejemplo de código muestra cómo crear una audiencia basada en reglas, al que se puede destinar el contenido.

Nota

La audiencia sólo se crea aquí; no se compilan y no se han agregado las reglas. Puede agregar reglas mediante la interfaz de usuario o el modelo de objetos y, a continuación, compilar la audiencia mediante la interfaz de usuario. También se pueden compilar audiencias mediante la clase AudienceJob .

Reemplace servername y otras cadenas por los valores actuales antes de ejecutar el ejemplo de código. Agregue las siguientes referencias al proyecto de 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

Seguridad para subprocesos

Los miembros static (Shared en Visual Basic) públicos de este tipo son seguros para subprocesos. No se garantiza que los miembros de instancias sean seguros para los subprocesos.

Vea también

Referencia

Miembros AudienceManager

Espacio de nombres Microsoft.Office.Server.Audience