文章目录
一、项目概述
Lin CMS .NET Core 是一款基于.NET 8和FreeSql实现的前后端分离的内容管理系统(CMS)。该项目旨在提高CMS开发效率,内置了用户管理、权限管理、日志系统等常用功能,支持Docker部署、OAuth2授权登录等多种现代化技术栈。
二、应用场景
Lin CMS .NET Core 适用于需要快速搭建内容管理平台的场景,包括但不限于:
- 企业官网管理:快速搭建和定制企业官网,管理文章、新闻、产品等信息。
- 博客平台:构建个人或团队博客,支持多用户、多标签、评论点赞等功能。
- 技术社区:搭建技术交流社区,支持技术频道分类、插件式功能扩展等。
- 内部管理系统:作为企业内部的管理系统,如文档管理、知识库等。
三、功能模块
- 用户注册、登录、信息修改
- 第三方授权登录(GitHub、QQ、Gitee)
- 用户角色与权限管理
- 基于角色的访问控制(RBAC)
- 细粒度的权限控制,支持菜单、按钮级别的权限分配
- 文章/随笔管理:发布、编辑、删除、分类、标签
- 评论管理:支持文章评论、点赞、回复
- 关注系统:用户关注、标签关注
- 日志系统:记录系统操作日志,便于问题追踪
- 字典项管理:系统基础数据的维护
- 消息通知:站内信、系统通知
- 内置用户管理、权限管理、日志系统等CMS常用功能
- 提供代码生成器,减少重复编码工作
四、功能特点
- 前端使用Vue.js构建,后端提供RESTful API接口
- 前后端独立开发、部署,提高开发效率和系统可维护性
- 基于.NET 8构建,支持跨平台部署
- 使用FreeSql作为ORM框架,支持多种数据库(MySQL、MsSqlServer、Oracle、Sqlite、PostgreSQL)
- 支持Docker部署,实现环境标准化和快速部署
五、项目技术栈
后端技术栈
- 编程语言: C# (.NET 8)
- Web框架: ASP.NET Core + WebAPI + RESTful
- ORM框架: FreeSql
- 数据库: MySQL 5.6+/MsSqlServer/Oracle/Sqlite/PostgreSQL
- 对象映射: AutoMapper
- 身份认证: JWT
- 文档API: Swagger (Swashbuckle.AspNetCore), RapiDoc, Knife4jUI
- 序列化: Newtonsoft.Json
- 测试框架: Xunit
- 日志: Serilog
- 依赖注入: AutoFac
- 通用扩展方法: Z.ExtensionMethods
- 云存储: 七牛云 (MQiniu.Core)
- 分布式事务、EventBus: DotNeteCore.CAP
- 第三方授权登录: AspNet.Security.OAuth.GitHub, AspNet.Security.OAuth.QQ, AspNet.Security.OAuth.Gitee
- 部署: Docker, Azure DevOps, GitHub Action
前端技术栈
- 框架: Vue.js
- 状态管理: Vuex
- 路由: Vue-Router
- UI组件库: ElementUi
- HTTP请求: axios
- 模块打包: webpack
- 其他: ES6
六、功能演示






