2016-03-18 19 views
1

我用迁移Sitecore的6.5〜8.1 Sitecore的我迁移我的Sitecore的从Sitecore的6.5至8.1

下面一个网站是写在Sitecore的6.5的代码,我需要改变,以Sitecore的8.1版本。 当我使用sitecore.analytics 8.1版本时,它显示错误。 可以让这个问题一些帮助解决了下面的代码

public static int GetPageVisits(ID pageId) 
{ 
    return DataAdapterManager.Provider.Sql.ReadOne<int>(CommandText, ReadPageViews, new object[] { "currentItemId", pageId.ToString() });    
} 
下面

是我得到的错误...

错误1“Sitecore.Analytics.DataAccess.DataAdapterProvider”不 包含“SQL”和没有扩展方法的定义“SQL”接受 类型的第一参数“Sitecore.Analytics.DataAccess.DataAdapterProvider”可以发现 (是否缺少using指令或程序集引用?)

+0

错误是什么? –

+0

嗨Devlin,下面是我得到的错误... 错误'Sitecore.Analytics.DataAccess.DataAdapterProvider'不包含'Sql'的定义,也没有接受第一个参数类型的扩展方法'Sql' “Sitecore.Analytics.DataAccess.DataAdapterProvider”可以找到(是否缺少using指令或程序集引用?) – Sree

回答

1

Sitecore的分析API在XDB改变,从你的代码中,我可以看到你正在试图让页面访问数,对于您可以使用下面的API

VisitStatistics PageStats = Sitecore.Analytics.Testing.TestManager.GetPageStatistics(Guid, DateTime, DateTime) 

GUID参数是项目ID时, 2 DateTime参数用于您希望获取页面统计信息的间隔时间范围。

+0

感谢艾哈迈德..但我使用下面的代码 公共静态INT GetPageVisits(ID PAGEID) { 返回DataAdapterManager.Provider.Sql.ReadOne (CommandText,ReadPageViews,new object [] {“currentItemId”,pageId.ToString()}); } private static int ReadPageViews(DataProviderReader reader) { return DataAdapterManager.Provider.Sql.GetInt(0,reader); } – Sree

+0

@Sree正如我在我的回答中所述,Sitecore分析API已更改,您以前的代码将不再有效,请尝试使用包含在答案中的新API –