Compartir a través de


Clase AudienceOperator

Representa la definición de un operador de la audiencia.

Jerarquía de la herencia

System.Object
  Microsoft.Office.Server.Audience.AudienceOperator

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.LinkDemand, ObjectModel := True)> _
Public Class AudienceOperator
'Uso
Dim instance As AudienceOperator
[SharePointPermissionAttribute(SecurityAction.InheritanceDemand, ObjectModel = true)]
[SharePointPermissionAttribute(SecurityAction.LinkDemand, ObjectModel = true)]
public class AudienceOperator

Comentarios

La clase AudienceOperator representa un operador individual que se permite como parte de una definición de regla. La lista de operadores permitidos incluye "de=," ">", "de>=," "<", "< =," "Contiene" "Informes de bajo," "<>", "no contiene" "Y", "OR""(," ")," y "Miembro de". Nuevos operadores requieren la siguiente información: nombre para mostrar (si se utiliza el operador de la interfaz de usuario), el nombre del operador usado los objetos de la audiencia y si el operador se puede aplicar a un grupo o si es un operador "No". Operaciones de grupo válidos se determinan por la enumeración AudienceGroupOperation e incluyen "AND", "O", "(", "y"). "

Este objeto puede instanciarse sólo mediante el objeto AudienceManager . Utilice la propiedad AudienceOperatorList para recuperar el objeto correcto AudienceOperator .

Ejemplos

En el ejemplo de código siguiente se agrega reglas complejas para una audiencia denominada "Conexión de Juan y Juan". En este ejemplo se utiliza AND, OR y operadores para combinar varias reglas (y) y a las reglas del grupo.

Nota

Si crea una audiencia con reglas complejas, no se puede ver o modificar sus propiedades o eliminarlas mediante la interfaz de usuario. Sin embargo, puede usar la interfaz de usuario para ver su pertenencia al grupo.

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;
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);

                    AudienceCollection ac = AudMgr.Audiences;
                    Audience a = null;
                    bool ruleListNotEmpty = false;

                    try
                    {
                        a = AudMgr.Audiences["John and Joe Connection"];
                    }
                    catch (AudienceArgumentException ex)
                    {
                        //your exception handling code here
                    }

                    ArrayList aRules = a.AudienceRules;
                    if (aRules == null)
                    {
                        aRules = new ArrayList();
                    }
                    else
                    {
                        ruleListNotEmpty = true;
                    }


                    try
                    {
                        //if the rule is not emply, start with a group operator 'AND' to append
                        if (ruleListNotEmpty)
                        {
                            aRules.Add(new AudienceRuleComponent(null, "AND", null));
                        }

                        AudienceRuleComponent r0 = new AudienceRuleComponent(null, "(", null);
                        aRules.Add(r0);

                        AudienceRuleComponent r1 = new AudienceRuleComponent("FirstName", "Contains", "John");
                        aRules.Add(r1);

                        AudienceRuleComponent r2 = new AudienceRuleComponent(null, "AND", null);
                        aRules.Add(r2);

                        AudienceRuleComponent r3 = new AudienceRuleComponent("WorkEmail", "Contains", "example.com");
                        aRules.Add(r3);

                        AudienceRuleComponent r4 = new AudienceRuleComponent(null, ")", null);
                        aRules.Add(r4);

                        AudienceRuleComponent r5 = new AudienceRuleComponent(null, "OR", null);
                        aRules.Add(r5);

                        AudienceRuleComponent r6 = new AudienceRuleComponent(null, "(", null);
                        aRules.Add(r6);

                        AudienceRuleComponent r7 = new AudienceRuleComponent("FirstName", "Contains", "Joe");
                        aRules.Add(r7);

                        AudienceRuleComponent r8 = new AudienceRuleComponent(null, "AND", null);
                        aRules.Add(r8);

                        AudienceRuleComponent r9 = new AudienceRuleComponent("WorkEmail", "Contains", "someexample.com");
                        aRules.Add(r9);

                        AudienceRuleComponent r10 = new AudienceRuleComponent(null, ")", null);
                        aRules.Add(r10);
                        a.AudienceRules = aRules;
                        a.Commit();
                    }
                    catch (AudienceException e)
                    {
                        //Your exception handling code here
                    }
                }
            }

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

        }

    }
}

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 AudienceOperator

Espacio de nombres Microsoft.Office.Server.Audience