Kentico Xperience Medlab示例项目:视图未找到报错求助
解决Kentico中"视图未找到且页面未注册模板"的问题
- 检查视图路径大小写:Kentico在Linux、部分IIS配置等环境下会严格区分文件名大小写,确认
MEDLAB_Home.cshtml的文件名与代码中引用的完全一致,包括大小写拼写。 - 验证页面类型注册:确认页面类型类(如
MEDLAB_HomePageType.cs)的[PageType]特性中,正确指定了视图路径,路径需完整写成~/Views/Shared/PageTypes/MEDLAB_Home.cshtml,避免相对路径层级错误。 - 清理重建项目:删除项目根目录下的
bin、obj文件夹,清理NuGet缓存后重新编译发布,排除旧编译文件的干扰。 - 检查视图生成操作:在Visual Studio中右键目标视图文件,确认"生成操作"设置为
Content,确保发布时视图文件会被正确包含到输出目录。 - 确认页面模板注册:在项目的页面构建器配置(如
Program.cs或Startup.cs)中,为该页面类型注册对应模板,示例代码:services.AddKentico().AddPageBuilder() .AddPageTemplate(new PageTemplateDefinition("MEDLAB.Home.Template", "首页模板") { ViewPath = "~/Views/Shared/PageTypes/MEDLAB_Home.cshtml", DefaultSections = new[] { "Kentico.WidgetSection" } }); - 检查路由配置:确保项目已正确启用Kentico路由,在中间件配置中调用
app.UseKenticoRouting(),并确认页面类型的路由约束配置无误。
内容的提问来源于stack exchange,提问作者Vivek Chandraprakash
相关产品推荐
相关产品推荐

