1.前言 分享一个基于ABP(.NET 5.0) + vue-element-admin项目.希望可以降低新手对于ABP框架的学习成本,感兴趣的同学可以下载项目启动运行一下.对于想选型采用ABP框架的,个人认为: ABP框架本身功能完善.设计封装优雅.扩展性高.层次划分简直完美.DDD基础设施完善,基本适用于大部分项目,唯一致命缺陷在于租户.用户主键采用了GUID类型,兼容性太差,不过很多项目可以忽略这个影响,极力推荐,最好不要造轮子. 2.Demo项目信息 支持功能清单 [x] 多租户管理(平…
这个项目起源于去年公司相要尝试用微服务构建项目,在网关的技术选型中,我们原本确认了ApiSix 网关,如果需要写网关插件需要基于Lua脚本去写,我和另外一个同事当时基于这个写了一个简单的插件,但是开发测试以及发布都很麻烦,而且使用Lua脚本作为插件的开发语言本身也不是我们强项. 后来通过其他渠道了解到了微软出了一个反向代理组件 Yarp,而且也有人基于它去做过一些项目,于是我就决定自己基于它来构建一个简单的Api网关,能够满足基础需求就好. 项目技术使用: 开发平台: .Net 6 + MySq…
点这里进入ABP系列文章总目录 分享一个与ABP配套使用的代码生成器源码 真对不起关注我博客的朋友, 因最近工作很忙, 很久没有更新博客了.以前答应把自用的代码生成器源码共享出来, 也一直没有时间整理. 今天把代码生成器的VS插件源代码打包上传到ABP架构设计交流群(QQ群号:134710707. 579765441),解压密码:mienreal 注意:此代码生成器由阳铭及团队自用,不具备通用性,分享出来只是给有兴趣的朋友研究和修改. 需要安装VS 2013的SDK包(vssdk_full.ex…
1. 前言 上一篇文章介绍了HSV色轮,这次分享一个基于HSV色轮的调色板应用,应用地址:ColorfulBox - Microsoft Store 2. 功能 ColorfulBox是Adobe 色轮的简单模仿,只实现了最基本的功能,UI也没那么好看,也没用MVVM框架. 2.1 HSV色轮 这个应用最好玩的地方在于分布于HSV色轮上的各个点(ColorPoint)以及可以通过拖动它们改变颜色.ColorPoint的基本结构如下(不是完整代码): public class ColorPoint…
LinFx 一个基于 .NET Core 2.0 开发的简单易用的快速开发框架,遵循领域驱动设计(DDD)规范约束,提供实现事件驱动.事件回溯.响应式等特性的基础设施.让开发者享受到正真意义的面向对象设计模式来带的美感. LinFx.Extensions Caching.DapperExtensions.Elasticsearch.EventBus.Metrics.Mongo.RabbitMQ 特性 领域驱动设计(DDD) 事件驱动架构 (EDA) 事件回溯 (ES) 最终一致性 (Eventu…
微信开发包括公众号.企业微信.微信小程序等方面的开发内容,需要对腾信的微信API接口进行封装:包括事件.菜单.订阅用户.多媒体文件.图文消息.消息群发.微信支付和企业红包.摇一摇设备.语义理解.微信小店.微信卡劵等相关接口处理,另外还包括扫一扫.图库和照片管理.地理位置.H5页面开发等内容,以及企业微信通讯录接口.成员消息相互发送等方面接口. 本篇介绍微信后台管理功能,在原先基于Asp.net的Bootstrap前端基础上,增加的Vue&Element前端的后台管理功能介绍. 我们在原先基础上增…
一.需求 我们经常会遇到[站内搜索]的需求,为了提高用户体验,我们希望能做到像百度那样的即时智能提示.例如:某公司人事管理系统,想搜索李XX,只要输入“李”,系统自然会提示一些姓李的员工,这样方便用户使用.说白了,就是用户边输入,系统会提示相关的结果:或者,当用户点击搜索框时,就推荐一些内容,如360.百度都会提示今天的主要新闻或搜索量大的内容. jquery 已经有一个这样的插件了,叫 autocomplete, 但我觉得不好用.关于autocomplete的介绍也很多,有兴趣的朋友可以去试试…
1.简介 中微子代理(neutrino-proxy)是一个基于 netty 的.开源的 java 内网穿透项目.遵循 MIT 许可,因此您可以对它进行复制.修改.传播并用于任何个人或商业行为. 2.项目结构 neutrino-proxy neutrino-core 与代理无关的基础封装 neutrino-proxy-core 与代理相关的公共常量.编解码器 neutrino-proxy-client 代理客户端项目 neutrino-proxy-server 代理服务端项目 neutrino-p…
一个业务功能往往不只由一次数据库请求(或者服务调用)实现.为了功能的完整性,我们希望如果该功能执行一半时出错,则撤销前面已执行的改动.在数据库层面上,事务管理实现了这种完整性需求.在ABP中,一个完整的业务功能称为一个工作单元(Unit of Work,简称UoW).工作单元代表一种完整的.原子性的操作.即一个工作单元包含的步骤要么全部被执行,要么都不被执行.如果执行一半时出现异常,则必须讲已执行的步骤还原.通常我们将事务管理实现在工作单元中.下面我们从ABP源码入手研究如何使用工作单元. AB…
public class BaseDAL<T> where T : class,new() { protected DbContext dbContext = DbContextFactory.GetCurrentDbContext(); protected DbSet<T> dbSet { get { return dbContext.Set<T>(); } } protected bool SaveChanges() { ; } protected T Add(T…