Mongodb Sitecore-WFFM升级

Mongodb Sitecore-WFFM升级,mongodb,sitecore,web-forms-for-marketers,sitecore8,Mongodb,Sitecore,Web Forms For Marketers,Sitecore8,我正在将我的解决方案从Sitecore版本6.6升级到Sitecore 8。请不要以为我的网站没有安装DMS 我已经安装并配置了SQL数据库(Sitecore 8附带的数据库)和MongoDb 我正在尝试将WFFM模块从2.4 rev.141008升级到2.5版,并进一步升级到WFFM 8 列出了一些步骤 第一步是WFFM转换-我尝试了,但出现了错误。我猜这是因为我没有DMS 错误是: Index for Visitor.ExternalName does not exist, execute

我正在将我的解决方案从Sitecore版本6.6升级到Sitecore 8。请不要以为我的网站没有安装DMS

我已经安装并配置了SQL数据库(Sitecore 8附带的数据库)和MongoDb

我正在尝试将WFFM模块从2.4 rev.141008升级到2.5版,并进一步升级到WFFM 8

列出了一些步骤

第一步是WFFM转换-我尝试了,但出现了错误。我猜这是因为我没有DMS

错误是:

Index for Visitor.ExternalName does not exist, execute script before running
 : CREATE NONCLUSTERED INDEX [IDX_ExtrernalUser] ON [dbo].[Visitors] ([ExternalUser])
我还尝试通过UpdateInstallationWizard.aspx运行更新包 这也失败了:

ERROR:An exception occured when trying to execute post installation action 
    '[s]Sitecore.Forms.Core.Configuration.UpgradePostStep, Sitecore.Forms.Core[/s]'.<br/>
     Details: [s]System.Reflection.ReflectionTypeLoadException: 
     Unable to load one or more of the requested types. Retrieve the LoaderExceptions 
     property  for more information.
       at System.Reflection.RuntimeModule.GetTypes(RuntimeModule module)
       at System.Reflection.RuntimeModule.GetTypes()
       at System.Reflection.Assembly.GetTypes()
       at Sitecore.Forms.Core.Configuration.UpgradePostStep.Run(ITaskOutput output, NameValueCollection metaData)
       at Sitecore.Update.Installer.Items.CustomActionInstaller.Process(IProcessingContext entry, IProcessingContext context)[/s]
INFO:Post installation step for the package 
'C:\inetpub\Sitecore8\www\sitecore\admin\packages\Web Forms for Marketers 2.5 rev. 141014.update' has been executed.
错误:尝试执行安装后操作时发生异常
“[s]Sitecore.Forms.Core.Configuration.UpgradePostStep,Sitecore.Forms.Core[/s]”。
详细信息:[s]System.Reflection.ReflectionTypeLoadException: 无法加载一个或多个请求的类型。检索LoaderExceptions 属性以获取更多信息。 位于System.Reflection.RuntimeModule.GetTypes(RuntimeModule) 在System.Reflection.RuntimeModule.GetTypes()中 在System.Reflection.Assembly.GetTypes()处 在Sitecore.Forms.Core.Configuration.UpgradePostStep.Run(ITaskOutput输出,NameValueCollection元数据) 在Sitecore.Update.Installer.Items.CustomActionInstaller.Process(IProcessingContext条目,IProcessingContext上下文)[/s] 信息:软件包的安装后步骤 'C:\inetpub\Sitecore8\www\sitecore\admin\packages\webformsformarketers 2.5版本。141014.已执行“更新”。

我真的不确定这里发生了什么,或者我需要采取什么步骤来解决这个问题。我是不是错过了中间的一步?

你好像错过了一步。WFFM 2.5模块适用于Sitecore 7.5,因此无法与Sitecore 8配合使用。在从7.2升级到7.5时,您应该遵循以下步骤。对于Sitecore 8,您需要安装版本8模块(例如),但这仍然无助于您的转换

可以使用serialization/packages/TDS/Unicorn将表单从现有解决方案中移动过来,但这只会移动表单本身的定义,而不会移动与这些表单相关的数据。在升级过程中还有许多其他更改,因此表单可能无法正确转换(例如,现在7.5中没有“保存到数据库”操作,所有内容都自动保存到MongoDB)

建议的解决方案是在Sitecore 7.5上执行这些升级步骤(您记得在升级过程中备份源代码和数据库吗?)

您可以尝试使用序列化/软件包将表单安装到Sitecore 7.5的干净安装中,连接干净的分析数据库(来自Sitecore 7.2)和现有表单数据库以及MongoDB的干净安装,然后再次尝试按照升级说明进行操作,但这并不能保证能起作用,而且可能会有缺失的部分。您可以遵循类似于以下内容的说明,但也要注意上一篇文章的建议:


您是否尝试连接一个空的分析数据库并为其配置连接字符串,然后尝试升级?是的,分析已启动并运行,并且在连接字符串更新后正确配置。我不知道哪个数据库中有“Visitor”表?可能是DMS数据库吗?我只看到一种将WFFM从2.4转换到2.5(然后最终转换到8)的方法,这涉及到转换工具。但是看起来这个工具是用来转换DMS数据的吗?@jammykam有没有办法让我重新安装WFFM 8模块,然后将数据从2.3迁移到8,而不是进行增量升级?我有一种感觉,你可能错过了一步-我认为SXP8中不再有访客表,现在都是关于联系人的。我想您在尝试WFFM升级之前已经将Sitecore实例升级到7.5了?您好@Trayek,我在Sitecore 8上。因此,升级存在问题。如果我干净地安装WFFM 8,数据迁移仍然是一个问题,对吗?我明白你的意思,但是为了将WFFM升级到8,这是一个渐进的过程。如果不通过2.5,就无法直接将WFFM 2.4升级到8。所以你认为我应该从Sitecore 7.2开始,然后将WFFM和Sitecore一起升级到Sitecore 7.5和WFFM 2.5?然后进一步介绍Sitecore和WFFM 8?是的,确切地说,升级Sitecore,并在每个步骤升级任何依赖模块。我知道很烦人。嗨@jammykam,我还有最后一个问题。考虑到站点上未启用DMS,是否有可能将表单数据从SQL迁移到Mongo?@NomadTraveler是的,应该有可能,根本没有表单相关的分析数据可迁移。使用升级包应触发安装后步骤,并遵循任何其他必需的手动迁移步骤。谢谢@jammykam。这是一个很大的安慰。然而,这正是我的升级失败的地方——在安装后步骤。我在问题中提到了错误。知道那是什么吗?