框架地址
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
項目進度
核心框架已發布正式的版本。
業務插件仍在編寫,目標是使用這套框架做一個開源的商城系統。
討論QQ群:522083886