3
我有一个分析管道添加在部分标准之前删除重复触发pageevents之前提交所有数据库,所以我可以有独特的触发事件,因为似乎有一个错误的android/ios设备触发几个事件内秒间隔。如何获取commitDataSet Analytics管道中的Sitecore会话期间触发的所有目标?
在此自定义管道中,我需要获取当前用户在他的会话中触发的所有目标/事件的列表,以便我可以比较从args参数获取的数据集中的值并删除已触发的值。
args.DataSet.Tables [“PageEvents”]只返回要提交给数据库的集合,并且这没有帮助,因为每次运行此管道时它都会发生更改。我也试过Sitecore.Analytics.Tracker.Visitor.DataSet,但是我得到这些属性的空值。
有没有人知道如何获得用户在他的会话中触发的所有目标的列表,而无需直接向数据库请求?
一些代码:
public class CommitUniqueAnalytics : CommitDataSetProcessor
{
public override void Process(CommitDataSetArgs args)
{
Assert.ArgumentNotNull(args, "args");
var table = args.DataSet.Tables["PageEvents"];
if (table != null)
{
//Sitecore.Analytics.Tracker.Visitor.DataSet.PageEvents - this list always empty
...........
}
}
}