ZKWeb网站框架介绍
框架地址
https://github.com/zkweb-framework/ZKWeb
https://github.com/zkweb-framework/ZKWeb.Plugins
新的文档地址
http://zkweb-framework.github.io
请参考以上的文档以获取最新的信息。
ZKWeb是一个着重快速开发和模块开发的网站框架。
提供了动态插件和全自动管理数据库结构的功能。
模板系统和自动生成页面参考了Django的做法,并遵从Don't repeat yourself原则。
主要功能
- .Net Core支持
- 支持运行在.Net Framework和.Net Core上
- 插件系统
- 使用Roslyn
- 支持动态加载插件
- 支持修改插件源代码后自动重新编译和加载
- 模板系统
- 使用DotLiquid
- 支持Django风格的模板重载
- 支持手机版专用模板(优先从templates.mobile读取模板内容)
- 支持区域和针对区域的动态内容,可以在这基础上实现可视化编辑
- 支持对页面中的部分内容进行单独缓存,可以大幅提升页面的响应速度
- IoC容器
- 轻量且快速
- 默认支持使用属性注册程序集中的类型到容器
- 支持构造函数注入
- 支持多个框架的托管
- 支持托管在Asp.Net
- 支持托管在Asp.Net Core
- 支持托管在Owin
- 插件不需要理会托管在哪个框架,使用抽象层即可
- 支持多个ORM
- 支持Dapper
- 支持EntityFramework Core
- 支持InMemory
- 支持MongoDB
- 支持NHibernate
- NHibernate还不能运行在.Net Core上
- NHibernate和EFCore支持运行时自动更新数据表结构,不需要手动迁移
- ORM有统一的抽象层,一份代码可以同时在所有ORM上运行,但不能实现完全兼容
- 本地化
- 支持多语言
- 支持多时区
- 提供了gettext风格的翻译函数
- 测试
- 支持在控制台和网页运行测试
- 支持在测试中重载IoC容器
- 支持在测试中重载Http上下文
- 支持在测试中使用临时数据库
- 项目工具
- 提供创建项目使用的工具
- 提供发布项目使用的工具
默认插件集中的主要功能
- 自动生成和验证表单
- 自动生成Ajax表格
- 自动生成CRUD页面
- 定时任务
- 验证码
- 管理后台(使用AdminLTE)
- 全自动伪静态,几乎没有额外开销
- 多货币和多国家支持
- 更多功能请查看各插件的文档
项目地址
https://github.com/zkweb-framework/ZKWeb
https://github.com/zkweb-framework/ZKWeb.Plugins
DEMO
用户名: demo
密码: 123456
项目进度
核心框架已发布正式的版本。
业务插件仍在编写,目标是使用这套框架做一个开源的商城系统。
讨论QQ群:522083886
ZKWeb网站框架介绍的更多相关文章
- ZKWeb网站框架的动态编译的实现原理
ZKWeb网站框架是一个自主开发的网页框架,实现了动态插件和自动编译功能. ZKWeb把一个文件夹当成是一个插件,无需使用csproj或xproj等形式的项目文件管理,并且支持修改插件代码后自动重新编 ...
- [译]MVC网站教程(一):多语言网站框架
本文简介 本博文介绍了 Visual Studio 工具生成的 ASP.NET MVC3 站点的基本框架:怎样实现网站的语言的国际化与本地化功能,从零开始实现用户身份认证机制,从零开始实现用户注册机制 ...
- [翻译]Spring框架参考文档(V4.3.3)-第二章Spring框架介绍 2.1 2.2 翻译--2.3待继续
英文链接:http://docs.spring.io/spring-framework/docs/current/spring-framework-reference/html/overview.ht ...
- Django 框架介绍
Django 框架介绍 MVC框架和MTV框架 简单了解一下什么是MVC框架.MVC(Model View Controller),是模型(model)-视图(view)-控制器(controller ...
- golang学习笔记17 爬虫技术路线图,python,java,nodejs,go语言,scrapy主流框架介绍
golang学习笔记17 爬虫技术路线图,python,java,nodejs,go语言,scrapy主流框架介绍 go语言爬虫框架:gocolly/colly,goquery,colly,chrom ...
- 第三百零三节,Django框架介绍——用pycharm创建Django项目
Django框架介绍 Django是一个开放源代码的Web应用框架,由Python写成.采用了MVC的软件设计模式,即模型M,视图V和控制器C.它最初是被开发来用于管理劳伦斯出版集团旗下的一些以新闻内 ...
- IOS-常用第三方开源框架介绍
iOS开发-常用第三方开源框架介绍(你了解的ios只是冰山一角) 时间:2015-05-06 16:43:34 阅读:533 评论:0 收藏:0 [点我收藏+] ...
- Python爬虫教程-30-Scrapy 爬虫框架介绍
从本篇开始学习 Scrapy 爬虫框架 Python爬虫教程-30-Scrapy 爬虫框架介绍 框架:框架就是对于相同的相似的部分,代码做到不出错,而我们就可以将注意力放到我们自己的部分了 常见爬虫框 ...
- iOS开发-常用第三方开源框架介绍
iOS开发-常用第三方开源框架介绍 图像: 1.图片浏览控件MWPhotoBrowser 实现了一个照片浏览器类似 iOS 自带的相册应用,可显示来自手机的图片或者是网络图片,可自动从网 ...
随机推荐
- opencv源码:cascadedetect
级联分类器检测类CascadeClassifier,提供了两个重要的方法: CascadeClassifier cascade_classifier; cascade_classifier.load( ...
- 火焰图分析openresty性能瓶颈
注:本文操作基于CentOS 系统 准备工作 用wget从https://sourceware.org/systemtap/ftp/releases/下载最新版的systemtap.tar.gz压缩包 ...
- 在Linux虚拟机下配置tomcat
1.到Apache官网下载tomcat http://tomcat.apache.org/download-80.cgi 博主我下载的是tomcat8 博主的jdk是1.8 如果你们的jdk是1.7或 ...
- Security Policy:行级安全(Row-Level Security)
行级安全RLS(Row-Level Security)是在数据行级别上控制用户的访问,控制用户只能访问数据库表的特定数据行.断言是逻辑表达式,在SQL Server 2016中,RLS是基于安全断言( ...
- Partition1:新建分区表
未分区的表,只能存储在一个FileGroup中:对Table进行分区后,每一个分区都存储在一个FileGroup,或分布式存储在不同的FileGroup中.对表进行分区的过程,是将逻辑上完整的一个表, ...
- docker for mac 学习记录
docker基本命令 docker run -d -p 80:80 --name webserver nginx 运行容器并起别名 docker ps 展示目前启动的容器 docker ps -a 展 ...
- JS判断鼠标进入容器方向的方法和分析window.open新窗口被拦截的问题
1.鼠标进入容器方向的判定 判断鼠标从哪个方向进入元素容器是一个经常碰到的问题,如何来判断呢?首先想到的是:获取鼠标的位置,然后经过一大堆的if..else逻辑来确定.这样的做法比较繁琐,下面介绍两种 ...
- <译>通过PowerShell工具跨多台服务器执行SQL脚本
有时候,当我们并没有合适的第三方工具(大部分需要付费)去管理多台数据库服务器,那么如何做最省力.省心呢?!Powershell一个强大的工具,可以很方便帮到我们处理日常的数据库维护工作 .简单的几步搞 ...
- 【转】39个让你受益的HTML5教程
闲话少说,本文作者为大家收集了网上学习HTML5的资源,期望它们可以帮助大家更好地学习HTML5. 好人啊! 不过,作者原来说的40个只有39个,因为第5个和第8个是重复的. 原文在此! 1. 五分钟 ...
- springmvc+mybatis+spring 整合 bootstrap html5
A 调用摄像头拍照,自定义裁剪编辑头像 [新录针对本系统的视频教程,手把手教开发一个模块,快速掌握本系统]B 集成代码生成器 [正反双向](单表.主表.明细表.树形表,开发利器)+快速构建表单; 技 ...