Friday, October 30, 2009

Programatically Add audiences and audience rules

Adding audiences and audiences rules programatically using SharePoint Object code


SPSecurity.RunWithElevatedPrivileges(delegate()
{
try
{
String siteUrl = args[0];
using (SPSite site = new SPSite(siteUrl))
{
ServerContext context = ServerContext.GetContextsite);
AudienceManager audManager = new AudienceManager(context);
AudienceCollection ac = audManager.Audiences;
Audience audNew1 = null;
Audience audNew2 = null;
string sNewAudience1 = "New Audience 1";
string sAudience1Description = "Description for New Audience 1";
string sNewAudience2 = "New Audience 2";
string sAudience2Description = "Description for New Audience 2";
try
{ //Create the audience for New Audience 1
audNew1 = ac.Create(sNewAudience1 , sAudience1Description);
ArrayList AudRules = new ArrayList();
AudienceRuleComponent rule1 = new AudienceRuleComponent
("", "=", "");
AudRules.Add(rule1);
AudienceRuleComponent rule2 = new AudienceRuleComponent("", "=", "");
AudRules.Add(rule2);
AudienceRuleComponent rule3 = new AudienceRuleComponent("", "=", "");
AudRules.Add(rule3);
AudienceRuleComponent rule4 = new AudienceRuleComponent("", "=", "");
AudRules.Add(rule4);
audNew1.AudienceRules = AudRules;
audNew1.Commit();
Console.WriteLine("New Audiences 1 added successfully");
//Create the audience for New Audience 1

audNew2 = ac.Create(sNewAudience2, sAudience2Description);
AudRules.Clear();
AudienceRuleComponent rule5 = new AudienceRuleComponent("", "=", "");
AudRules.Add(rule5);
AudienceRuleComponent rule6 = new AudienceRuleComponent("", "=", "");
AudRules.Add(rule6);
AudienceRuleComponent rule7 = new AudienceRuleComponent("", "=", "");
AudRules.Add(rule7);
audNew2.AudienceRules = AudRules;
audNew2.Commit();
Console.WriteLine("New Audiences 2 added successfully");
}
catch (AudienceDuplicateNameException e)
{
Console.WriteLine(e.ToString());
Console.Read();
}
}
}
catch (Exception exception)
{
Console.WriteLine(exception.ToString());
Console.Read();
}
});

2 comments:

  1. I have heard about another way of acrobat document recovery. Besides, you can visit my blogs at: http://daspeac.livejournal.com/ or http://daspeac.blogspot.com/ where I’m trying to share my experience with regard to data corruption issues.

    ReplyDelete
  2. Very useful info. Hope to see more posts soon!

    —————————————
    Tempy Rzydwalk

    ReplyDelete