Azure部署Kentico MVC站点:自定义仅内容页面类型类生成异常求助
解决Kentico自定义内容页面类型生成类丢失的问题
我之前在Azure上部署Kentico MVC项目时也碰到过一模一样的问题,给你几个排查和解决的方向:
1. 检查代码生成配置是否正确
先登录Kentico后台,进入系统 -> 开发 -> 代码生成页面,确认生成路径确实设置为~/App_Code/CMSClasses,同时要确保勾选了「生成页面类型类」的选项。有时候部署后配置可能被重置,或者之前不小心修改过路径。
2. 确认App_Code目录的状态
- 先查看项目根目录下有没有
App_Code文件夹,如果没有就手动创建一个,之后再重新尝试生成类。 - 如果你用的是Azure App Service,要确保这个目录有读写权限。可以通过Azure门户的App Service配置页检查文件系统权限,或者用Kudu工具(
https://<你的应用名>.scm.azurewebsites.net)查看目录是否能正常写入。
3. 排查MVC架构的项目结构差异
因为是MVC框架,Kentico的代码生成有时候会把类生成到CMSApp项目(后台项目)里,而不是前端的MVC项目。如果你用的是分离式MVC架构,记得去CMSApp项目的App_Code/CMSClasses目录下找找看。
4. 手动触发代码生成
有时候自动生成可能没触发成功,可以试试:
- 回到页面类型编辑界面,做个微小的修改(比如给描述加个空格再删掉),然后点击保存,强制触发生成逻辑。
- 或者直接在代码生成页面,选中对应的页面类型,点击「生成代码」按钮手动生成。
5. 检查Azure部署的文件同步问题
如果本地生成了类但Azure上没有,可能是部署时没同步App_Code目录:
- 用Git部署的话,检查
.gitignore文件有没有排除App_Code文件夹。 - 用Zip部署的话,打包时要确保包含
App_Code目录下的所有文件。
内容的提问来源于stack exchange,提问作者joym8
相关产品推荐
相关产品推荐

