Files
Yi.Framework/README.md
2021-12-25 15:28:43 +08:00

192 lines
7.4 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<h1 align="center"><img align="left" height="100px" src="https://user-images.githubusercontent.com/68722157/138828506-f58b7c57-5e10-4178-8f7d-5d5e12050113.png"> Yi框架-一个紧跟时代的.NetCore开源框架</h1>
<h1 align="center">基于.NET6+Vue快速开发框架</h1>
<h4 align="center">意义为了开发更简易</h4>
[English](README-en.md) | 简体中文
![sdk](https://img.shields.io/badge/sdk-6.0.1-d.svg)![License MIT](https://img.shields.io/badge/license-Apache-blue.svg?style=flat-square)
****
#### 简介:
**中文:意框架**
**CC.Yi.Old**.Net5早期三层单体架构已被CC.Yi取代
**CC.Yi**:.Net5经典极简三层WebApi单体应用架构
**Yi.Framework.Net5**:.Net5 DDD领域驱动设计分层微服务架构
**Yi.Framework.Net6**:.Net6 DDD领域驱动设计分层微服务架构正在更新
**Yi.Vue**Vue2.0配合CC.Yi.Framework使用前端项目正在更新
**分支ec****Yi.Framework.Net5+vue2.0** 实战项目!基于 Yi.Framework.Net5 微服务千万级并发电商项目DEMO同步更新
**分支erp****Yi.Framework.Net6+vue2.0** 实战项目!基于 Yi.Framework6 云管理系统项目DEMO同步更新
****
#### 演示地址:
废话少说直接上地址,**请不要**更改里面的数据
API服务 [yi.ccnetcore.com](http://yi.ccnetcore.com) 管理员账号admin 、 123
![image](https://user-images.githubusercontent.com/68722157/147379813-f18b8e28-5c7f-4cd1-a93a-8ba3028424b1.png)
网关地址:[gate.ccnetcore.com/swagger](http://gate.ccnetcore.com/swagger)
![image](https://user-images.githubusercontent.com/68722157/147379797-0f8fb455-d072-414d-a9d7-ad717dd34357.png)
#### 支持:
- [x] 完全支持单体应用架构
- [x] 完全支持分布式应用架构
- [x] 完全支持微服务架构
- [ ] 即将支持网格服务架构我们将在后续版本加入dapr
****
#### 软件架构:
**架构**:后端.NET6(Asp.NetCore 6)与.NET5(Asp.NetCore 5)、前端Vue2.0
**关系型数据库**mysql、sql server、sqlite、oracle
**操作系统**Windows、Linux
**身份验证**Identity、JWT、IdentityServer4
**组件**EFcore、Autofac、Castle、Swagger、Log4Net、Redis、RabbitMq、ES、Quartz.net、T4
**分布式**CAP、Lock
**微服务**Consul、Ocelot、IdentityService、Apollo、Docker、Jenkins、Nginx、K8s、ELK、Polly
**封装**Json处理模块滑动验证码模块base64图片处理模块异常捕捉模块、邮件处理模块、linq封装模块、随机数模块、统一接口模块、基于策略的jwt验证、过滤器、数据库连接、跨域、初始化种子数据、Base32、Console输出、日期处理、文件传输、html筛选、http请求、ip过滤、md5加密、Rsa加密、序列化、雪花算法、字符串处理、编码处理、地址处理、xml处理、心跳检查
****
#### 支持模块:
大致如图:
![image](https://user-images.githubusercontent.com/68722157/142923071-2fa524eb-e833-4143-a926-51566e56e889.png)
![image](https://user-images.githubusercontent.com/68722157/142923150-ebe1b538-c3fc-42dd-bea8-83e10e0f819a.png)
![image](https://user-images.githubusercontent.com/68722157/142923529-e4fbb2f6-def1-4702-b9da-5adbd22f0a2f.png)
- [x] 支持`DDD领域驱动设计`进行分层,支持微服务扩展
- [x] 支持采用`异步`开发awit/async
- [x] 支持数据库主从`读写分离`
- [x] 支持功能替换,无需改动代码,只需配置`json文件`进行装配即可
- [x] 支持采用DbFirst开发方式使用`T4模板代码生成器`自动映射模型一键生成Service及IService所有代码
- [x] 支持`用户-角色-菜单-接口`以及vue2.0前端全部逻辑代码,下载无需修改直接使用
- [x] 支持`Aop封装`FilterAop、IocAop、LogAop
- [x] 支持`Log4Net日志`记录自动生成至bin目录下的logs文件夹
- [x] 支持`DbSeed数据库种子数据`接入默认创建admin用户密码123
- [x] 支持主流`数据库随意切换`Mysql/Sqlite/Sqlserver/Oracle
- [x] 支持微软官方`EFcore ORM`
- [x] 支持`SwaggerWebAPI`jwt身份认证接入
- [x] 支持`Cors`跨域
- [x] 支持`AutoFac`自动映射依赖注入
- [x] 支持`consul`健康检查
- [x] 支持`RabbitMQ`消息队列
- [x] 支持`Redis`多级缓存
- [x] 支持`Ocelot`网关路由、服务聚合、服务发现、认证、鉴权、限流、熔断、缓存、Header头传递
- [x] 支持`Apollo`全局配置中心;
- [x] 支持`docker`镜像制作
- [x] 支持页面`静态化处理`,将动态页面生成静态页面
- [x] 支持`Quartz.net`任务调度,实现任意接口被调度
- [x] 支持`ELK`log4net+kafka+es+logstach+kibana
- [x] 支持`IdentityService4`授权中心
- [x] 支持`Es`分词查询
- [x] 支持多级`缓存`
- [x] 支持`CAP`分布式事务mysql+rabbitMq
- [x] 支持`Docker+k8s`部署
- [x] 支持`Jenkins+CI/CD`
- [ ] 支持`autoMapper`模块映射
- [ ] 支持`微信支付`(没账号)
****
#### 目录结构:
![图片](https://user-images.githubusercontent.com/68722157/138565689-ac6e2489-4b8f-47fd-93c1-47f26d453779.png)
我们依照DDD领域驱动设计分层
- BackGround后台进程
- Client客户端
- Domain领域层
- Infrastructure实例层
- MicroServiceInstance服务层
另外,**分支ec电商**目录结构:
![image](https://user-images.githubusercontent.com/68722157/142923703-9c56cd4c-2201-4933-9b26-dcb3f9f2d1b8.png)
****
#### 安装教程:
我们将在之后更新教程手册!
1. 下载全部源码默认使用sqlite数据库已经生成
2. 使用Visual Studio 2019在windows环境中打开CC.Yi.sln文件即可
****
#### 使用说明:
我们将使用说明转移至我们的官方论坛中,正在制作中,尽情期待!
****
#### 感谢人员:
**国内.Net行业领头人中** Eleven神、哲学的老张
**核心开发人员**
[橙子]https://github.com/ccnetcore
[lzw]https://github.com/yeslode
[其他]https://github.com
****
#### 联系我们:
QQ454313500
官方网址:正在建设
****
#### FQA:
问1为何不采用经典的三层架构
答1EFcoreORM已经非常强大已经完全可以充当数据处理层另一个原因在简单与复杂我们选择了简单
问2这个框架的一切都是原创的吗
答2并不是我们在初期是参考过非常非常多的其他框架但我们可以保证基本上绝大部分都是原创。
问3以后会持续更新下去吗
答3一定会的我们的标题是 一个紧跟时代的.Netcore开源框架 ,如果有我们比较感兴趣的技术,我们一定会加入进来,例如:.Net6 。(已更新)
问4这个框架的针对人群是哪些人适合所有人吗
答4并不是适合所有人应该算适合需要有一定基础的开发人员当然如果你是大神你完全可以将这个框架改进
问5花如此多的精力制作这个框架是为了什么是为了赚钱吗和目前主流的abp等框架比又有什么意义呢
答5不说什么大话制作这个框架主要原因是为了自己使用以及其他的参考学习。abp确实非常优秀但和我们意框架其实并不冲突使用场景是不一样的。
问6为何不出版一个详细的说明书呢
答5应该不会了代码都是基于Asp.Netcore框架适用于新手不用造轮子整个框架较为简单阅读源码后基本能自定义改造使用了过难也已经封装完毕别忘了其意义是为了开发更加简易