Lin CMS .NET Core——一款基于 .NET 8 + FreeSql 实现的前后端分离的 CMS 系统

文章目录

一、项目概述

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

六、功能演示






七、源码地址

https://gitcode.com/bjzhang75/LinCMS_dotNet

相关推荐
步步为营DotNet2 小时前
解锁.NET 11 潜力:Microsoft.Extensions.AI 在后端 AI 集成中的实践与剖析
人工智能·microsoft·.net
wangl_921 天前
初探 C# 15 的 Union Types
java·开发语言·算法·c#·.net·.net core
SEO-狼术1 天前
Make Range Input Simpler
pdf·.net
wangl_921 天前
C# / .NET 在工业环境中的优势
开发语言·c#·.net·.netcore·.net core·visual studio
△曉風殘月〆1 天前
不同.NET版本中的WPF新增功能
.net·wpf
余衫马1 天前
Microsoft Semantic Kernel 入门指南
人工智能·microsoft·.net·agent·智能体
码农学院2 天前
itextsharp .net中如何设置两个表格的间距设为0,取网站的域名,协议、端口、当前站点目录的地址
开发语言·c#·.net
步步为营DotNet2 天前
深挖.NET 11:.NET Aspire 引领云原生开发新高度
云原生·.net