Furion 历经两年打磨
网友笔伐过
用户捧杀过
内心反复放弃过
最终化茧成蝶
为祖国信创添砖加瓦
十大理由
- 你们公司招聘的 .NET 架构师绝大概率没有百小僧牛逼(别杠)。
- 百小僧全天候待命,只要确认 Bug,当天修复,当天发版。
- 全球超400万个项目安装了 Furion,你不是一个人在战斗。
- 超270万字的保姆级使用手册,”保温杯里泡枸杞“ 的养生法你不需要。
- 程序员上岗无需培训,直接丢文档了事,实习生来了都可以扛大旗。
- MIT 开源协议,商用无猫腻,超高质量的源码,企业看了眼里少不了金光。
- 底层核心无第三方依赖,应用层仅依赖了两个第三方包,技术自主可控。
- 框架持续高速迭代,精益求精,为软件系统开发保驾护航。
- 超过220个开发者贡献代码和文档,国内.NET开源项目仅此一份。
选择Furion
还需要理由吗?
跟贴:https://gitee.com/dotnetchina/Furion/issues/I60IQ1
项目信息
- 仓库地址:https://gitee.com/dotnetchina/Furion
- 文档地址:https://furion.baiqian.ltd/
- Nuget地址:https://www.nuget.org/profiles/monk.soul
本期亮点
https://furion.baiqian.ltd/docs/upgrade
1. 脚手架支持指定 `NET5-.NET7
# 创建 .NET5 版本
dotnet new furionapi -n 项目名称 -f net5
# 创建 .NET6 版本
dotnet new furionapi -n 项目名称 -f net6
# 创建 .NET7 版本
dotnet new furionapi -n 项目名称 -f net7
2. 监听日志支持输出更多信息
info: 2022-11-10 12:26:15.1743075 +08:00 星期四 L Microsoft.Hosting.Lifetime[0] #1
Application started. Press Ctrl+C to shut down.
info: 2022-11-10 12:26:15.1780741 +08:00 星期四 L Microsoft.Hosting.Lifetime[0] #1
Hosting environment: Development
info: 2022-11-10 12:26:15.1812062 +08:00 星期四 L Microsoft.Hosting.Lifetime[0] #1
Content root path: D:\Workplaces\OpenSources\Furion\samples\Furion.Web.Entry
info: 2022-11-10 12:26:29.0927692 +08:00 Thursday L System.Logging.LoggingMonitor[0] #17
┏━━━━━━━━━━━Logging Monitor ━━━━━━━━━━━
┣ Furion.Application.TestLoggerServices.测试日志监听1 (Furion.Application)
┣
┣ 控制器名称: TestLoggerServices
┣ 操作名称: 测试日志监听1
┣ 路由信息: [area]: ; [controller]: test-logger; [action]: 测试日志监听1
┣ 请求方式: POST
┣ 请求地址: https://localhost:44316/api/test-logger/测试日志监听1
┣ 来源地址: https://localhost:44316/api/index.html
┣ 请求端源: swagger
┣ 浏览器标识: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/107.0.0.0 Safari/537.36 Edg/107.0.1418.35
┣ 客户端 IP 地址: 0.0.0.1
┣ 服务端 IP 地址: 0.0.0.1
┣ 执行耗时: 34ms
┣ ━━━━━━━━━━━━━━━Cookies ━━━━━━━━━━━━━━━
┣ 请求端: Hm_lvt_91e98d00c5024e8d87b0bb3c10281d59=1665543612,1665626680,1665640427,1665709510; .AspNetCore.Culture=c=en-US|uic=en-US; name=百小僧; age=30
┣ 响应端:
┣ ━━━━━━━━━━━━━━━系统信息 ━━━━━━━━━━━━━━━
┣ 系统名称: Microsoft Windows 10.0.22621
┣ 系统架构: X64
┣ 基础框架: Furion v4.7.6.0
┣ .NET 架构:.NET 7.0.0
┣ ━━━━━━━━━━━━━━━启动信息 ━━━━━━━━━━━━━━━
┣ 运行环境: Development
┣ 启动程序集: Furion.Web.Entry
┣ 进程名称: iisexpress
┣ 托管程序: iisexpress
┣ ━━━━━━━━━━━━━━━返回信息 ━━━━━━━━━━━━━━━
┣ 原始类型: System.Void
┣ 最终类型: Furion.UnifyResult.RESTfulResult_System.Object
┣ 最终返回值:
┗━━━━━━━━━━━Logging Monitor ━━━━━━━━━━━
本期更新
https://furion.baiqian.ltd/docs/upgrade
v4.7.9
版本细节:https://gitee.com/dotnetchina/Furion/issues/I60MFK 2022.11.11v4.7.7
版本细节:https://gitee.com/dotnetchina/Furion/issues/I60GZ8 2022.11.10v4.7.6
版本细节:https://gitee.com/dotnetchina/Furion/issues/I60591 2022.11.08v4.7.5
版本细节:https://gitee.com/dotnetchina/Furion/issues/I600R4 2022.11.08v4.7.3
版本细节:https://gitee.com/dotnetchina/Furion/issues/I5Z9TI 2022.11.03v4.7.2
版本细节:https://gitee.com/dotnetchina/Furion/issues/I5YG48 2022.10.30v4.7.1
版本细节:https://gitee.com/dotnetchina/Furion/issues/I5Y6U3 2022.10.28v4.7.0
版本细节:https://gitee.com/dotnetchina/Furion/issues/I5Y04N 2022.10.27
新特性
- [新增] 日志模块时间格式化默认输出
毫秒
部分,针对并发比较高的场景 4.7.0 c0dc36c- [新增] 写入数据库日志死循环输出检测机制 4.7.0 30dea0c
- [新增]
LoggingMonitor
输出系统信息
,.NET 架构
和基础框架
4.7.1 aeda902- [新增] 远程请求
.SetQueries(obj, ignoreNullValue)
重载方法 4.7.3 #I5Z8KC- [新增] 远程请求
.GetCookies()
和.GetSetCookies()
拓展方法 4.7.5 #I5ZY1L- [新增] 事件总线
.ReplaceStorerOrFallback
自定义事件源存储器方法,可在自定义初始失败时回退到默认值 4.7.6 #I602NU- [新增]
LoggingMonitor
输出启动信息
,Cookies
和请求端源
信息 4.7.7 3037b04- [新增]
JSON
序列化DateOnly
和TimeOnly
类型转换器:.AddDateOnlyConverters()
和.AddTimeOnlyConverters()
4.7.9 !657 47a5fcb- [新增]
HttpContext.ReadBodyContentAsync()
拓展方法重复读取Body
内容 4.7.9 #I60IYU突破性变化
- [新增] 所有脚手架支持
-f
指定.NET
版本 4.7.6 #I603AZ- [升级] 适配
.NET 6.0.11
和.NET 7
4.7.5 7df3195- [升级] 所有脚手架至
.NET 7
4.7.5 7df3195- [调整]
LogContext
类型的所有方法至Furion.Logging
命名空间下,解决空异常问题 4.7.3 #I5YOT3- [调整] 旧版本定时任务为
弃用
状态(一周内发布新版),如需取消警告在.csproj
中添加<NoWarn>0618</NoWarn>
4.7.9 0ff3ac0问题修复
- [修复] 生成
JWT Token
时间戳和自动刷新逻辑在高并发下检查有效性不够精确问题,原因是时间戳丢掉了毫秒部分 4.7.0 3c0c017- [修复] 在
IDatabaseLoggingWriter
实现类中输出日志导致死循环问题 4.7.0 30dea0c- [修复] 规范化结果
OnResponseStatusCodes
方法在Response
已完成写入时设置出现异常问题 4.7.2 #I5YBHL- [修复]
L.SetCulture("zh-CN");
在Response
已完成写入时设置出现异常问题 4.7.2 #I5YBHL- [修复] 动态
WebAPI
在类上配置[Route]
特性且包含[action]
模板导致生成错误接口路径 4.7.2 #I5YEZQ- [修复] 启用二级虚拟目录
AppSettings:VirtualPath
导致swagger
的miniprofile
加载失败 4.7.3 #I5Z8RM- [修复]
LoggingMonitor
监听带有[FromServices]
的方法参数或接口类型参数出错 4.7.7 3037b04- [修复]
HttpRequest
通过.ReadBodyContentAsync()
读取不到Body
问题 4.7.9 #I60IYU其他更改
- [更新]
JSON Schema
配置,新增日志更多参数提醒 4.7.0 74bee56- [调整] 日志记录时间格式默认输出带
7位
的毫秒值 4.7.1 aeda902- [调整] 所有脚手架默认启用
单文件/独立部署
配置 4.7.7 1277f53文档
- [新增]
IIS
回收问题解决方案文档- [新增] 远程请求获取
Cookies
文档- [新增]
LoggingMonitor
写入数据库文档- [新增] JSON 序列化
DateOnly
和TimeOnly
类型处理文档- [新增]
HttpContext
读取Body
内容文档- [新增]
PM2
配置文件json
部署文档- [更新] 日志记录文档、定时任务文档、远程请求文档、脚手架文档
特别贡献
- @YaChengMu:!657
- @LiuDanK:#I60MP2