Я не мог заставить предложенный ответ работать, но я нашел решение, которое делает!Это должно быть актуально для Sitecore с 6.5 по 7.2 (не уверен около 7.5 и выше).Вы можете получить доступ к кампаниям через объект Sitecore.Analytics.Tracker.DataContext
.
Объединяя эти знания с ответом Стивена Папы, мы получаем:
using System.Linq;
using Sitecore.Analytics;
// won't be null if a campaign was triggered
if (!Tracker.CurrentVisit.IsCampaignIdNull())
{
var campaign = Tracker.DataContext.Where(x => x.ID.Guid == Tracker.CurrentVisit.CampaignId).FirstOrDefault();
if (campaign != null)
{
// do stuff with the campaign here
var name = campaign.Title;
}
}
Я также позаботился о том, чтобы получить тип трафика кампании, которыйВы можете сделать так:
var trafficType = campaign.SelectTrafficType.TargetItem.Name;