Query A/B test campaigns
To find a specific AB campaign, you use the NewslettersManager class. The following code finds an AB campaign with the specified IDthrough the Native API. ```C# using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using Telerik.Sitefinity.Modules.Newsletters; using Telerik.Sitefinity.Newsletters.Model;
namespace Telerik.Sitefinity.Documentation.CodeSnippets.DevGuide.SitefinityEssentials.Modules.EmailCampaigns.ABCampaigns { public partial class EmailCampaignsSnippets { public ABCampaign QueryABCampaign(Guid id) { NewslettersManager manager = NewslettersManager.GetManager(); ABCampaign abCampaign = manager.GetABCampaigns().Where(c => c.Id == id).SingleOrDefault();
return abCampaign;
}
}
}
First, you initialize the NewslettersManager. Then, you call GetABCampaigns to retrieve all AB campaigns. Finally, you filter the campaigns based on the *Id* property.
> info **NOTE:** You can filter by any of the ABCampaign properties.
Another way is to use the GetABCampaign method of the manager class: ```C#
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Telerik.Sitefinity.Modules.Newsletters;
using Telerik.Sitefinity.Newsletters.Model;
using Telerik.Sitefinity.SitefinityExceptions;
namespace Telerik.Sitefinity.Documentation.CodeSnippets.DevGuide.SitefinityEssentials.Modules.EmailCampaigns.ABCampaigns
{
public partial class EmailCampaignsSnippets
{
public ABCampaign QueryABCampaignById(Guid id)
{
NewslettersManager manager = NewslettersManager.GetManager();
ABCampaign abCampaign = null;
try
{
abCampaign = manager.GetABCampaign(id);
}
catch (ItemNotFoundException e)
{
//implement logic regarding the missing item.
}
return abCampaign;
}
}
}
NOTE: If no AB campaign with the specified ID exists, the GetABCampaign method throwsTelerik.Sitefinity.SitefinityExceptions.ItemNotFoundException exception.