Kentico 12 MVC Staging同步页面提示No Route Value Found错误如何解决?
该错误由Kentico 12 MVC的动态路由依赖配置缺失、或同步范围未覆盖关联配置对象导致,可按以下步骤排查修复:
核对两端NuGet包版本
确认UAT环境MVC项目安装的Kentico.Web.Mvc、Kentico.Content.Web.Mvc、Kentico.DynamicRouting.Web.Mvc包版本与本地开发环境完全一致,清理UAT站点bin目录后重新发布全量代码,避免旧版本dll残留导致程序集标记识别失败。检查动态路由启用配置
- 登录UAT环境Kentico后台,进入「设置」→「内容」→「页面路由」,确认启用动态路由选项已勾选,所有路由规则配置与本地环境完全对齐
- 确认MVC项目的启动代码(Startup.cs/Global.asax.cs)中已正确注册动态路由,且注册顺序在默认路由之前,参考代码:
// 启用Kentico核心服务 app.UseKentico(); // 注册页面动态路由 app.UsePageRouting();
- 同步关联配置对象
不要单独同步目标页面,先将以下关联对象同步到UAT后再执行页面同步:
- 页面所属的自定义页面类型,以及系统根页面类型
CMS.Root - 站点配置、路由规则相关的所有待同步Staging任务
- 重置站点状态
同步完成后重启UAT站点的应用程序池,清空后台系统缓存后重试同步操作。
内容的提问来源于stack exchange,提问作者chamara
相关产品推荐
相关产品推荐

