ZKEACMS中的功能都是比较通用的功能,并不一定能满足所有的用户需求,您可以使用ZKEACMS的源代码进行开发和扩展新的功能。
在开始开发ZKEACMS之前,请在您的Visual Studio中安装以下插件:
ZKEACMS的开源地址:
推荐使用git clone
下载代码:
git clone https://github.com/SeriaWei/ZKEACMS.git
如果您不会使用git下载,可以参考这篇文章 《如何使用git下载ZKEACMS源代码》
在开始之前,需要先生成数据库:http://www.zkea.net/zkeacms/document/createdatabase
接下来就可以使用Visual Studio来打开项目了,双击解决方案文件(ZKEACMS.sln
)打开项目。如果没有安装Visual Studio,也可以使用Visual Studio Code来开发。
请实际情况修改数据库连接字符串(Connection String),打开appsettings.json进行修改:
"Database": {
"DbType": "MsSql",
"ConnectionString": "Server=(local);Database=ZKEACMS;User Id=sa;Password=sa;"
}
设置ZKEACMS.WebHost
项目为启动项目。
然后按F6
生成解决方案,等待解决方案生成完成:
按下来就可以按Ctrl+F5或者F5运行项目了。
如果是.Net Core版本,建意不要使用IIS Express而是使用控制台来运行程序,以免插件生成失败。设置使用ZKEACMS.WebHost来运行程序:
注意:第一次打开项目不要直接按F5运行,请一定要先做一次生成解决方案(F6)。
运行成功后,使用http://localhost:5000进行访问。
当您在开发.Net Core版本的ZKEACMS时,查看这篇文章可以提高您的开发效率:
https://www.cnblogs.com/seriawei/p/7444728.html
http://www.zkea.net/zkeacms/videos/view/start-dev.html
在纸壳CMS中,给路由定义了优先级,所以在处理用户请求地址的时候,通过路由的优先级来决定访问的流程走向,如果找到匹配的路由,则优先走该路由对应的Controller -> Action -> View
,如果没有匹配的路由,则走路由优先权最低的“全捕捉”路由来处理用户的请求,最后返回响应。
优先级最低的“全捕捉”路由({*path})是用来处理用户创建的页面。所有这些请求,都会到PageController -> Main
(MVC4版本是PageController -> PreView
)进行处理。所以前端页面是没有独立的Action进行处理的,也没有真实的物理视图文件。具体原理:https://www.zkea.net/zkeacms/document/principle
所以当访问~/index时,就到了PageController -> Main
进行处理。
而后端统一使用controller,action通配路由:~/admin/{controller}/{action}
。
如果没有安装Visual Studio,还可以使用Visual Studio Code进行纸壳cms的开发。我们已经做好了相关的配置和文档,可以快速开始:
http://www.zkea.net/codesnippet/detail/zkeacms-vscode.html
ZKEACMS的发布有些不一样,如果直接使用Visual Studio中的发布来发布ZKEACMS的话是不能正常运行的。请先查看我们的发布说明: