AudienceOperator class
Representa a definição de um operador de público-alvo.
Inheritance hierarchy
System.Object
Microsoft.Office.Server.Audience.AudienceOperator
Namespace: Microsoft.Office.Server.Audience
Assembly: Microsoft.Office.Server.UserProfiles (in Microsoft.Office.Server.UserProfiles.dll)
Syntax
'Declaração
<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
Comentários
A classe AudienceOperator representa um operador individual que é permitido como parte de uma definição de regra. A lista de operadores permitidos inclui "=," ">", ">=," "<", "< =," "Contém," "Relatórios em", "<>", "não contém," "E", "ou""(," ")," e "Membro de". Novos operadores necessitam as seguintes informações: o nome de exibição (se o operador é usado na interface do usuário), o nome de operador usado pelos objetos público e se o operador pode ser aplicado a um grupo, ou se é um operador "Não". Operações de grupo válidas são determinadas pela enumeração AudienceGroupOperation e incluir "AND", "OR", "(,"e")."
Este objeto pode ser instanciado somente pelo objeto AudienceManager . Use a propriedade AudienceOperatorList para recuperar o objeto correto AudienceOperator .
Examples
O exemplo de código a seguir adiciona regras complexas para uma audiência chamada "Conexão de John e Joe". Este exemplo usa AND, OR e (e) operadores para combinar várias regras e com as regras do grupo.
Dica
Se você criar um público com regras complexas, não é possível exibir ou editar suas propriedades ou excluí-la usando a interface do usuário. No entanto, você pode usar a interface do usuário para exibir seus membros.
Substitua servername e outras seqüências de caracteres com valores reais antes de executar o exemplo de código. Além disso, adicione as seguintes referências em seu projeto do 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();
}
}
}
}
Thread safety
Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.