Skip to content
.NET 开发者指北.NET 开发者指北
CMS
.NET指北
FreeKit
Docker
关于
博客
github icon
    • Lin CMS By .NET
      • 后端准备
        • 后端快速上手
          • 相关技术
            • 前端准备
              • 开源介绍
                • 设计如下
                  • 我原本想实现这样的功能
                • 功能模块的设计
                  • 产品设计
                    • GitHub Actions
                      • LinCms如何切换成SQL server

                      开源介绍

                      calendar icon2020年5月13日timer icon大约 2 分钟word icon约 724 字

                      此页内容
                      • 设计如下
                        • 我原本想实现这样的功能

                      # 开源介绍

                      • 地址:https://github.com/luoyunchong/lin-cms-dotnetcoreopen in new window

                      1.什么是cms?

                      Content Management System,内容管理系统。

                      2.dotnetcore是什么

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

                      3.lin-cms 是什么

                      Lin-CMS 是林间有风团队经过大量项目实践所提炼出的一套内容管理系统框架。Lin-CMS 可以有效的帮助开发者提高 CMS 的开发效率, 需要前端?请访问前端仓库。官方团队产品了解请访问TaleLin

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

                      前后端分离,提供后端接口,更少的依赖,后续将实现模块化安装与卸载。

                      • 用户管理、分组管理、分组权限管理、日志系统、文件上传等
                      • 更多功能(自定义扩展-模块系统)
                      • 博客模块,类掘金专栏,用户中心,标签、个人专栏、技术频道(首页分类)

                      # 设计如下

                      # 字典管理

                      # 我原本想实现这样的功能

                      BaseType 1 对BaseItem多。

                      如:标签管理,一个文章下可以设置多个标签,原本需要设计表Tag,字段也大抵为Id,Name,Sort及关联表。 我们使用BaseType、BaseItem实现。 BaseType中TypeCode为tag,FullName为标签,id为1时。 BaseItem中BaseTypeId为1,ItemCode为编码,ItemName为标签。ItemCode为不重复的字符串即可。

                      另Tag与Article的关联表,需要另设计一个表。

                      当我们要实现文章类别的下拉,原本需要设计一个表ArticleType,有字段,id,name,sort等。 我们可以通过BaseType、BaseItem来实现,从而简化这些基础数据。 BaseType有一条数据,TypeCode为 字符串category、FullName文章类别,BaseItem存多个文章类别(Java、大数据、Python、C#等),编码不同即可。

                      1. 表结构

                      # base_type (字典类别管理)

                      字段类型备注
                      idint
                      type_codevarchar(50)类别编码
                      full_namevarchar(50)全称
                      sort_codeint排序码

                      # base_item (字典管理)

                      字段类型备注
                      idint
                      base_type_idint类别id(关联base_type的id)
                      item_codevarchar(50)字典编码
                      item_namevarchar(50)字典全称
                      sort_codeint排序码

                      # 但现实总是事与愿违

                      后台取文章列表时,想要取出文章对应的分类,手动join时,总觉得join的表会有些奇怪。

                      当然还有其他原因,局限性:

                      1. 比如使用了这个字典,分类需要增加一个图片字段,就不能满足要求,那怎么办呢,做不了。
                      2. 比如标签需要实现这个标签下有多少个文章,通过统计也能实现,

                      使用FreeSql实现时,如果二个表之间没有导航属性,是更复杂的。

                      edit icon在 GitHub 上编辑此页open in new window
                      上次编辑于: 2022/10/24 14:14:31
                      贡献者: luoyunchong,igeekfan
                      上一页
                      前端准备
                      下一页
                      功能模块的设计
                      MIT Licensed | Copyright © 2021-present luoyunchong
                      苏ICP备16046457号-1

                      该应用可以安装在你的 PC 或移动设备上。这将使该 Web 应用程序外观和行为与其他应用程序相同。它将在出现在应用程序列表中,并可以固定到主屏幕,开始菜单或任务栏。此 Web 应用程序还将能够与其他应用程序和你的操作系统安全地进行交互。

                      详情