.NET

lin-cms-dotnetcore功能模块的设计

2019-11-25  本文已影响0人  天上有木月0

lin-cms-dotnetcore功能模块的设计

先来回答以下问题。

1.什么是cms?

Content Management System,内容管理系统。

2.dotnetcore是什么?

.NET Core,是由Microsoft开发,目前在.NET Foundation(一个非营利的开源组织)下进行管理,采用宽松的MIT协议,可构建各种软件,包括Web应用程序、移动应用程序、桌面应用程序、云服务、微服务、API、游戏和物联网应用程序。

3.lin-cms 是什么?

Lin-CMS 是林间有风团队经过大量项目实践所提炼出的一套内容管理系统框架。Lin-CMS 可以有效的帮助开发者提高 CMS 的开发效率,

Lin的定位在于实现一套 CMS的解决方案,管理系统的基础框架,提供了不同的后端,不同的前端实现,后端也支持不同的数据库,是一套前后端完整的解决方案

目前官方团队维护 lin-cms-vue,lin-cms-spring-boot,lin-cms-koa,lin-cms-flask 社区维护了 lin-cms-tp5,lin-cms-react,lin-cms-dotnetcore,即已支持vue,react二种前端框架,java,nodejs,python,php,c#等五种后端语言。

lin-cms-vue(官方)

lin-cms-koa(官方)

lin-cms-flask(官方)

lin-cms-spring-boot(官方)

lin-cms-tp5(社区)

lin-cms-react(社区)

lin-cms-dotnetcore(社区)

4.lin-cms-dotnetcore有哪些特点?

基于.NET Core3.1实现的LIN-CMS-VUE后端API,并增加了博客模块。目前实现简约的权限管理系统、基础字典项管理、随笔专栏,评论点赞、关注用户、技术频道(标签分类)、消息通知,标签等仿掘金模块。

功能模块的设计

基础权限模块

比如存某用户选择的是markdown还是富文本。

name="Article.Editor",
value="markdown" 或 "富文本",
provider_name为"User",
provider_key为用户Id

或存储七牛云的某一个配置

name="Qiniu.AK",
value="asfadsfadf23rft66S4XM2GIK7FxfqefauYkcAyNGDAc" ,
provider_name为"Qiniu"或自己定义的字符串
provider_key为空

cms 管理员维护模块

cms 用户端模块

脑图分享

http://naotu.baidu.com/file/6532431a2e1f0c37c93c5ffd1dd5b49c?token=87690a9bc64fbae1

分组

分为三种

id  name        info
1   Admin       系统管理员
2   CmsAdmin    内容管理员
3   User        普通用户

审计日志

大多数表存在如下8个字段,用于记录行的变化状态,is_deleted为软删除,执行删除操作时,将其状态置为true,默认实体类继承 FullAduitEntity 即可拥有以下8个字段。该设计参考ABP中的实现。FullAduitEntity为泛型,默认id为long类型,FullAduitEntity<Guid>,即可改变主键类型,默认LinUser表主键long,保持create_user_id,delete_user_id,update_user_id都与LinUser的主键相同


id                  bigint
create_user_id      bigint
create_time         datetime
is_deleted          bit
delete_user_id      bigint
delete_time         datetime
update_user_id      bigint
update_time         datetime


相关技术

分层结构(Layers)

功能特性

lin-cms 开源地址分享

Demo

上一篇 下一篇

猜你喜欢

热点阅读