我需要将我们的一个网站从Umbraco 6.0.7升级到7.4.0。我已经更新了NuGet包并遵循了升级指南。我已经替换了umbraco
,umbraco_client
和config
文件夹,以确保没有与7.4.0不兼容的配置。
不幸的是,更新向导失败并显示以下错误消息:
2016-02-16 20:57:13,838 [P6904/D3/T10] ERROR Umbraco.Core.DatabaseContext - Database configuration failed
Microsoft.CSharp.RuntimeBinder.RuntimeBinderException: 'System.Dynamic.ExpandoObject' does not contain a definition for 'NodeId'
at CallSite.Target(Closure , CallSite , Object )
at System.Dynamic.UpdateDelegates.UpdateAndExecute1[T0,TRet](CallSite site, T0 arg0)
at Umbraco.Core.Persistence.Migrations.Upgrades.TargetVersionSeven.UpdateRelatedLinksData.<UpdateRelatedLinksDataDo>b__15(Object x)
at System.Linq.Enumerable.WhereSelectListIterator`2.MoveNext()
at System.Linq.Enumerable.<DistinctIterator>d__63`1.MoveNext()
at System.Linq.Buffer`1..ctor(IEnumerable`1 source)
at System.Linq.Enumerable.ToArray[TSource](IEnumerable`1 source)
at Umbraco.Core.Persistence.Migrations.Upgrades.TargetVersionSeven.UpdateRelatedLinksData.UpdateRelatedLinksDataDo(Database database)
at Umbraco.Core.Persistence.Migrations.Syntax.Execute.Expressions.ExecuteCodeStatementExpression.Process(Database database)
at Umbraco.Core.Persistence.Migrations.MigrationRunner.ExecuteMigrations(IMigrationContext context, Database database)
at Umbraco.Core.Persistence.Migrations.MigrationRunner.Execute(Database database, DatabaseProviders databaseProvider, Boolean isUpgrade)
at Umbraco.Core.Persistence.Migrations.MigrationRunner.Execute(Database database, Boolean isUpgrade)
at Umbraco.Core.DatabaseContext.UpgradeSchemaAndData(IMigrationEntryService migrationEntryService)
似乎UpdateRelatedLinksData
升级步骤需要不同的数据/架构。如何解决这个问题?是否需要对数据库进行任何手动更改?
答案 0 :(得分:0)
我有同样的问题。我还没有找到答案,但我正在our, umbraco's site.
上探讨这个帖子的选项我已经设法通过在我的6.0.5数据库中指向Umbraco 7.3.7的vanilla安装将数据库升级到7.3.7但是当我尝试在数据库中指向6.0.5站点时我得到了这个错误我无法解决:
[InvalidCompositionException: ContentType with alias 'HeaderAndFooter' was added as a Composition to ContentType with alias 'AToZResults', but there was a conflict on the following PropertyTypes: 'umbracoNaviHide'. PropertyTypes must have a unique alias across all Compositions in order to compose a valid ContentType Composition.]
所以我试图升级到7.4并得到你的错误。我在Umbraco's issues site上发现了这个ExpandoObject错误,并在this issue上进行了类似的讨论,我遵循了将数据库导出到空6.1.6实例的建议。我无法将数据导入到空的6.1.6数据库中,但是PK和FK约束问题太多了。有些人确实建议手动数据库编辑,但我的是一个大型生产网站,所以我不去那里。
所以我目前正在尝试两种方式: 1)顺序升级 2)关于Umbraco线程的建议,即如果你有一个更新的vanilla umbraco解决方案指向升级的7.3.7数据库,你可以只复制视图,css脚本,js,图像,配置,字体,媒体进入新的解决方案......它会飞吗?'
如果有效,我会告诉你!