# WebApiDotnetCoreDemo
**Repository Path**: 274660277/WebApiDotnetCoreDemo
## Basic Information
- **Project Name**: WebApiDotnetCoreDemo
- **Description**: .Net Core 整合一些基本的Web框架,封装了一些组件,包括如下:
mqtt通讯组件:MqttLib(基于MqttNet v3.1.1)
消息总线组件:MessageBus(基于Masstrasit)
微服务注册:ServiceRegisterDiscoveryExtensions(基于consul)
消息队列封装:MQHelper(基于RabbitMqClient)
- **Primary Language**: C#
- **License**: Apache-2.0
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 16
- **Forks**: 6
- **Created**: 2019-04-10
- **Last Updated**: 2025-08-13
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
# WebApiDotnetCoreDemo
## 介绍
这是基于现有的流行组件、框架和官方库搭建的一套Web服务的模板,旨在学习 .net core
在webapi框架,整合了多种IOC、AOP方式,EFCore.MySql仓储、微信快捷登录、消息总线(MassTransit)、消息队列(RabbitMQ)、微服务(Oeclot+Consul)、缓存(redis)等,都是使用当前流行、好用的组件,我不生产开源组件,我只是开源组件的搬运工。这封装纯粹是为了偷懒,方便自己以后开发使用组件时,可以直接拿过来使用,大部分组件功能强大、api又多,使用不方便,简单封装后可以直接拿来使用,满足基本功能需求
------------------------------------------
### BaseFrameworkDemo
WebApiCoreFx:(dotnet core3.1 + EFCore + Autofac + AspectCore + Log4net + Redis + ...)
基于AspectCore实现AOP;
------------------------------------------
自定义中间件;
------------------------------------------
基于ActionFilterAttribute的A自定义特性AOP;
------------------------------------------
增加WxAppUtil模块,整合微信小程序快捷登录功能
(Demo:接口WebApiCoreFx工程:/api/Login/WxLogin)
------------------------------------------
增加MemoryCache,Redis缓存
(Demo:接口WebApiCoreFx工程:/api/Test/Get):MemoryCache
(Demo:接口WebApiCoreFx工程:/api/Test/GetAll):Redis
------------------------------------------
新增MultipleCache.CoreComponent组件:
基于ActionFilterAttribute实现API缓存(Redis)
------------------------------------------
优化EFCore.MySql自定义泛型仓储:
+字段排序; +查询字段选择; (亲测OK)
------------------------------------------
加EncryptionTool.OpenSsl.RSAOpenSslTool,简单RSA加密解密组件;api/Security/GetRSAPublicKey获取公钥
------------------------------------------
添加ServiceRegisterDiscoveryExtensions组件,用于把服务注册到consul
参考 WebApiCoreFx 项目的用法
------------------------------------------
Ocelot.GatewayProj
Ocelot网关Demo
------------------------------------------
MqttLib组件
基于MQTTnet v3.1.1 进行封装,简化mqtt的使用方法,参考测试:TestProject.MqttLibTest
------------------------------------------
## 软件架构
.Net Core WebApi,MVC,微服务
#### 参与贡献