随笔分类 - .NET6
摘要:一、说明 导入导出是系统中经常需要用到的功能,大部分系统的导入功能都是上传一个excel文件,然后导入成功就提示导入成功,失败就提示导入失败,顶多返回一个导入结果的excel,非常的不直观。如何设计一个优雅的导入让用户能非常直观的在数据还没导入进系统的时候看到有哪些数据是可以导入的,有哪些是会导入失
阅读全文
摘要:一、说明 批量修改功能是系统使用中经常用到的功能,可以修改多条数据的某一个属性值为某一个值,非常方便,目前市面上的开源系统好像都不支持批量修改功能,只支持手动的去一个个修改记录,非常麻烦,于是我根据这个需求开发了批量修改插件SimpleAdmin.Plugin.Batch,可以实现表的单个字段的批量
阅读全文
摘要:一、前言 传统开发中,通常采用DbFirst的方式开发,先有数据库和表,再将对应的表转为实体。随着技术的发展,开始有了CodeFist的方式开发,先创建实体类,再通过实体类反向的创建数据库和表结构,微软的EF框架就是典型,本系统使用的ORM是SqlSugar,同样也支持CodeFisrt,详情可以查
阅读全文
摘要:一、前言 在2.0的架构设计中,引入了插件的概念,目的就是为了解决代码臃肿问题,随着系统功能越来越多,System层的代码也越来越多,之前是以文件夹的方式区分功能模块,这样的话代码就过于集中,想找到某一个功能模块的代码就要翻好几个文件夹,不利于以后的开发和维护。所以在新的架构中,我将部分功能模块通过
阅读全文
摘要:一、说明 在SimpleAdmin1.0版本中,我将整体项目结构分为三大块,分别为架构核心、业务模块和应用服务。随着1.0版本的封版,回去再看我之前的项目架构,也暴露了一些问题,比如在1.0版本中,Signalr和Mqtt只能二选一,这显然是不科学的,因为这两种虽然都可以作为消息通知,但是显然可以有
阅读全文
摘要:一、说明 大部分项目里,其实有很多代码是重复的,几乎每个模块都有 CRUD 增删改查的功能,而这些功能的实现代码往往是大同小异的。如果这些功能都要自己去手写,非常无聊枯燥,浪费时间且效率很低,还可能会写错。 本框架提供代码生成器功能,通过选择数据库表,完成单表的增删改查管理功能,可以生成包括前端、后
阅读全文
摘要:一、说明 系统中有很多数据是不会经常修改的,但是读取的频率确很高,所以这时候就需要使用缓存将这些数据缓存起来。本系统支持MemeryCache和Redis分布式缓存两种方式,将一些基本信息表缓存在内存中,可以大大减少数据库压力,提高读取速度。关于Redis的说明和安装请自行百度,win下都是一键安装
阅读全文
摘要:一、前言 在之前使用其他admin的时候,经常会有人再部署的时候会遇到这么一个问题:明明在生产环境中配置了后端的api地址,但是通过nginx部署之后,请求的确是本地的地址。这是因为在项目中配置了代理,部署之后所有的请求都走了代理导致配置文件地址失效,关于vite代理说明,请自行百度,针对这种情况,
阅读全文
摘要:一、什么是国密加密 二、国密实现 本系统实现了国密SM2和SM4加解密,可以在SimpleAdmin.Core下的Utils->Cryptogram文件夹下找到。 2.1 SM2 Sm2加解密需要配置公钥和私钥,在配置文件中配置即可 前端通过公钥加密数据,详情可看utils下的smCrypto.js
阅读全文
摘要:一、前言 作为前后端分离项目,前后端交互是一个非常重要的功能。目前主流框架都是通过Socket实现,本系统自然也是实现了基于Signalr的前后端交互,并在此基础上实现了基于MQTT的前后端交互功能,MQTT相比socket业务场景更多更灵活,在物联网方向有着非常多的应用。在工业物联网方向,mqtt
阅读全文
摘要:SimpleAdmin 🐔没有花里胡哨,只有简单、稳定、灵活、高效🐔 [](https://gitee.com/zxzyjs/SimpleAdm
阅读全文
摘要:框架相关 是否支持多租户? 1.当前版本并未实现多租户功能,因为在实际开发场景中,需要多租户的场景少之又少,多机构的模式完全可以满足99%的业务需求,增加多租户对代码量和BUG率有着明显的增加。2.多租户需要考虑的方方面面太多,并不是加个租户id这么简单,目前.net开源的多租户基本上就是套个租户i
阅读全文
摘要:一、前言 在日常开发过程中,Furion框架无疑是个非常好的选择,但是随着项目的增多,很多项目的配置会出现重复配置的情况,比如日志记录,每个项目都需要配置一遍,如果有地方修改了,又要每个项目配置一遍,所以考虑到配置的可重复性和方便,将不通项目之间可以通用的模块独立出来,作为Furion框架的拓展,方
阅读全文
摘要:一、项目说明 NewLife.Redis.Core基于新生命团队NewLife.Redis的封装,支持.NETCore3/.NET6/7。 NewLife.Redis 是一个Redis客户端组件,以高性能处理大数据实时计算为目标。 源码: https://github.com/NewLifeX/Ne
阅读全文
摘要:一、前言 消息队列(Message Queue)是分布式系统必不可少的中间件,大部分消息队列产品(如RocketMQ/RabbitMQ/Kafka等)要求团队有比较强的技术实力,不适用于中小团队,并且对.NET技术的支持力度不够。而Redis实现的轻量级消息队列很简单,仅有Redis常规操作,几乎不
阅读全文
摘要:一、说明 SimpleSqlSugar包是基于果糖网的sqlsugar的单例模式的二次封装,,无需每个项目都要新建dbcontext类,只需要注入SimpleSqlSugar就可以使用sqlsugar的所有功能。欢迎star Gitee地址:https://gitee.com/zxzyjs/Simp
阅读全文
摘要:一、说明 Shiny.Redis是一个redis客户端,基于新生命团队newlife.redis的封装,支持.net core3,.net5,.net6 Gitee地址:https://gitee.com/huguodong520/shiny.redis 二、安装 nuget直接搜索Shiny.Re
阅读全文
摘要:一、说明 SimpleTool包主要集成了一些常用的帮助类,包括字符串处理,json处理,文件处理等 github地址:https://github.com/zxzyjs/SimpleTool.git gitee地址: 二、安装 nuget直接搜索安装即可 三、使用 1.经纬度计算距离 查看代码 u
阅读全文
摘要:一、用户标签管理 1.1、创建标签 Services文件夹下新建User文件夹和用户服务类 Dto文件夹下新建TagInput.cs public class TagInput { /// <summary> /// 标签名称 /// </summary> public string Name {
阅读全文