Sitecore Profile.Score(string,float)存在十进制值问题

时间:2013-08-20 19:34:54

标签: sitecore personalization sitecore-dms

我正在使用sitecore网站rev 120706 DMS和main。

当我们尝试使用Score(string,float)方法添加角色值时,我们正在为某些页面添加角色并获得具有小数值的异常结果。由于两个配置文件被添加到一个值为1的另一个配置文件中,另一个值为0,因此我们有一个值为0.5的值。在表单提交时,我们要在值中添加一个并使用Profile.Score( “lead”,1)用1替换.5而不是加1来得到1.5。当值为1时,我们成功获得2。

我们怎样才能让Score方法以一致的方式做出反应?

1 个答案:

答案 0 :(得分:0)

Sitecore显然在代码中使用int.Parse而不是float.Parse存在问题

  

我在代码中找到了出现错误的位置。它在   Sitecore.Analytics.Data.VisitProfile.Parse()方法。它使用int.Parse   而不是float.Parse从数据库中读取配置文件值。   此问题已在Sitecore 6.6.0 Update-4中修复。请参阅参考资料   发行说明中的​​编号376088。不幸的是,没有简单的方法   修复代码。请考虑将您的解决方案升级到6.6.0   更新4。与此同时,我建议使用更高的分数值   在您的配置文件中,结果值始终大于1。   这种方法对我有用。如果您有,请告诉我们   任何麻烦。

要解决问题最终只是将我们使用的值乘以10以避免使用sitecore的int而不是float问题。