Sitecore OMS中的TriggerEvent不是DMS
我一直在尝试用OMS中的“TriggerEvent”替代6.4版本中不推荐的方法。我现在用下面的代码得到下面的错误。在新的DMS 6.5中。我不确定什么是正确的新方法Sitecore OMS中的TriggerEvent不是DMS,sitecore,sitecore6,sitecore-dms,Sitecore,Sitecore6,Sitecore Dms,我一直在尝试用OMS中的“TriggerEvent”替代6.4版本中不推荐的方法。我现在用下面的代码得到下面的错误。在新的DMS 6.5中。我不确定什么是正确的新方法 var tracker = Sitecore.Analytics.Tracker.Visitor.CurrentVisit.CurrentPage; if (tracker != null) { string dataXml = Review_Module.sitecore_modules.Review_module.Cl
var tracker = Sitecore.Analytics.Tracker.Visitor.CurrentVisit.CurrentPage;
if (tracker != null)
{
string dataXml = Review_Module.sitecore_modules.Review_module.Classes
.AnalyticsHelper.FillDataField(new string[]
{
"Title", title, "Description", description, "Rate", rate
});
PageEventData eventData = new PageEventData("Review");
eventData.Data = dataXml;
VisitorDataSet.PageEventsRow pageEventsRow = Sitecore.Analytics.Tracker.CurrentPage.Register(eventData);
Sitecore.Analytics.Tracker.Submit();
错误
6.4 OMS中的工作代码
string dataXml = Review_Module.sitecore_modules.Review_module.Classes.AnalyticsHelper.FillDataField(new string[]
{
"Title", title, "Description", description, "Rate", rate
});
tracker.CurrentPage.TriggerEvent("Review", "Review: \"" + Sitecore.Context.Item.Name + "\"", string.Empty, dataXml);
tracker.Submit();
您可以在SDN上查看DMS的API。我认为您应该关注两个文档:
- 好的,我终于有机会回到这里更新这篇文章了。我能在6.5分钟内完成这项工作。不确定他们是否要更新模块或是否有计划更新模块
首先,,
我必须删除对TriggerEvent方法的调用。同样,分析型Stracker也不复存在。它现在使用PageEventData和Sitecore.Analytics.Tracker.CurrentPage
var tracker = Sitecore.Analytics.AnalyticsTracker.Current;
if (tracker != null)
{
string dataXml = Review_Module.sitecore_modules.Review_module.Classes.AnalyticsHelper.FillDataField(new string[]
{"Title", title, "Description", description, "Rate", rate});
tracker.CurrentPage.TriggerEvent("Review", "Review: \"" + Sitecore.Context.Item.Name + "\"", string.Empty, dataXml);
tracker.Submit();
}
并将其替换为:
var tracker = Sitecore.Analytics.Tracker.CurrentPage;
if (tracker != null)
{
string dataXml = Review_Module.sitecore_modules.Review_module.Classes.AnalyticsHelper.FillDataField(new string[]
{
"Title", title, "Description", description, "Rate", rate
});
PageEventData eventData = new PageEventData("Review");
Guid Gu = new Guid();
eventData.Text = "Review: \"" + Sitecore.Context.Item.Name + "\"";
eventData.DataKey = String.Empty;
eventData.Data = dataXml;
eventData.ItemId = new Guid(Sitecore.Context.Item.ID.ToString());
Tracker.CurrentPage.Register(eventData);
Tracker.Submit();
}
此外,还必须更新为UI公共视图发布的评论的SQL
发件人:
致:
希望这有帮助
var tracker = Sitecore.Analytics.Tracker.CurrentPage;
if (tracker != null)
{
string dataXml = Review_Module.sitecore_modules.Review_module.Classes.AnalyticsHelper.FillDataField(new string[]
{
"Title", title, "Description", description, "Rate", rate
});
PageEventData eventData = new PageEventData("Review");
Guid Gu = new Guid();
eventData.Text = "Review: \"" + Sitecore.Context.Item.Name + "\"";
eventData.DataKey = String.Empty;
eventData.Data = dataXml;
eventData.ItemId = new Guid(Sitecore.Context.Item.ID.ToString());
Tracker.CurrentPage.Register(eventData);
Tracker.Submit();
}
//var sql = @"select {0}PageEvents{1}.Data from {0}PageEvents{1} inner join {0}Pages{1} on {0}PageEvents{1}.PageId = {0}Pages{1}.PageId
//inner join {0}PageEventDefinitions{1} on {0}PageEventDefinitions{1}.PageEventDefinitionId = {0}PageEvents{1}.PageEventDefinitionId
//where {0}Page{1}.ItemId = @itemId
//and {0}PageEventDefinitions{1}.Name = 'Review'";
var sql = @"select {0}PageEvents{1}.Data from {0}PageEvents{1}
where {0}PageEvents{1}.ItemId = @itemId
and {0}PageEvents{1}.[Text] LIKE 'Review:%'";