.NET 框架 Furion v4.4.8 发布,诸多改进优化


前言

本期主要对日志性能、远程请求性能还有诸多模块性能进行改进。

项目信息

  • Gitee:https://gitee.com/dotnetchina/Furion
  • Github:https://github.com/MonkSoul/Furion
  • 文档:https://dotnetchina.gitee.io/furion

本期更新

  • v4.4.8 版本细节:https://gitee.com/dotnetchina/Furion/issues/I5SKUE
  • v4.4.7 版本细节:https://gitee.com/dotnetchina/Furion/issues/I5SEFE
  • v4.4.6 版本细节:https://gitee.com/dotnetchina/Furion/issues/I5RSFD
  • v4.4.5 版本细节:https://gitee.com/dotnetchina/Furion/issues/I5RHQX
  • v4.4.4 版本细节:https://gitee.com/dotnetchina/Furion/issues/I5R5TI
  • v4.4.3 版本细节:https://gitee.com/dotnetchina/Furion/issues/I5QVH3
  • v4.4.2 版本细节:https://gitee.com/dotnetchina/Furion/issues/I5QDHX
  • v4.4.1 版本细节:https://gitee.com/dotnetchina/Furion/issues/I5Q3SX
  • v4.4.0 版本细节:https://gitee.com/dotnetchina/Furion/issues/I5PQHR

  • 新特性

    • [新增] 新增友好异常可控制是否输出错误日志配置 LogError: true #I5PKJH
    • [新增] DateOnlyJsonConverter  DateOnlyOffsetJsonConverter 序列化转换器 !565
    • [新增] 事件总线 LogEnabled 配置,可控制是否输出服务日志 #I5QLY5
    • [新增] 可实现任何多套规范化结果功能,支持特定控制器,特定方法 #I5QZ37
    • [新增] ILoggerFactory 日志工厂动态批量添加文件日志拓展 #I5R9PO
    • [新增] App.GetCommandLineConfiguration(args) 解析命令行参数静态方法 803542c
    • [新增] Sql 代理支持返回受影响行数 #I5REJ9
    • [新增] 任意自定义日志文件名支持滚动日志删除功能 #I5RFBQ
    • [新增] .pcd 图片类型 MIME  image/x-photo-cd 支持 5fafc84
    • [新增] 默认日志输出当前线程 Environment.CurrentManagedThreadId b8fe2cd
    • [新增] app.UseInject(Action<UseInjectOptions>) 重载方法,简化配置 0b645fe
  • 突破性变化

    • [支持] .NET 6.0.9  .NET 7.0 RC1 be5b40 1eee77b
    • [调整] 远程请求 .SetBodyBytes  .SetFiles #I5PMS5 #I5PIYI
    • [调整] FS.InitialContentTypeProvider() 名称为 FS.GetFileExtensionContentTypeProvider() 5fafc84
    • [移除] 远程请求 [BodyBytes] 设计,采用 HttpFile 方式 #I5PMS5 #I5PIYI
    • [调整] 所有的 AddInject  UseInject 参数设计 #I5QCF0
    • [调整] 远程请求所有 xxxAsStreamAsync 返回值 #I5QVEB
  • 问题修复

    • [修复] 远程请求代理模式非泛型参数导致数组溢出问题 #I5Q3SN
    • [修复] LoggingMonitor 客户端 IP 记录错误 #I5QCU1 !562
    • [修复] 远程请求响应报文中包含 charset=gbk 进行序列化后乱码问题 #I5QVEB
    • [修复] 文件日志断电时丢失日志问题 db7d51b
    • [修复] 动态 WebAPI 或控制台贴了 [ApiDescriptionSettings(Tag = "")] 标签之后导致注释丢失 #I5REVF #I5RE4J
    • [修复] 启用数据库日志但是没有配置配置文件出现空异常问题 33817be
    • [修复] 控制台日志过滤无法过滤默认主机日志问题 33817be
    • [修复] 脚手架错误的日志配置问题 33817be
    • [修复] 高频压测情况下写日志并设置日志上下文导致并发更新出现 System.AggregateException 异常问题 #I5RFBQ
    • [修复] 日志文件名因 Windows  Linux 路径分隔符不一致导致日志文件创建失败问题,Linux 只支持 / 不支持 \ #I5RFBQ
    • [修复] Oops.Oh/Bah 设置 .WithData 之后无效问题 !580
    • [修复] 基于 Redis 重写事件存储器序列化 IEventSource 实例异常问题 3e45020
    • [修复] 使用 Log 静态类超高频率下写日志导致 CPU 激增问题 #I5SDK5
    • [修复] 远程请求超高频率下发送请求导致 CPU 激增问题和异常问题 #I5SJJR
  • 其他更改

    • [调整] JWTEncryption 静态类,支持无需注册 services.AddJwt() 使用 #I5PPKE #I5POLZ
    • [调整] 事件总线默认日志类名为 System.Logging.EventBusService #I5QLY5
  • 文档

    • [新增] .NET6 升级 .NET7 文档
    • [新增] ASP.NET 7 集成文档
    • [更新] 友好异常文档、日志记录文档、远程请求文档、依赖注入文档、即时通讯文档、事件总线文档、Worker Service 文档、单元测试文档、入门指南文档、数据库新增文档

相关文章

2022-07-15

先知 / Furion (探索版) 一个应用程序框架,您可以将它集成到任何 .NET/C# 应用程序中。 An application framework that you can integrate into any .NET/C# application. 安装 / Installation Package Manager Install-Package Furion .NET CLI dotnet a

2022-09-16

es", (bytes, "image1.png"), (bytes, "image2.png"))).PostAsync(); 3. 简化框架初始配置参数签名 public void ConfigureServices(IServiceCollection services) { services.AddInject(options => { options.ConfigureSwaggerGen(gen => { // ... }); }); } public void Configure(IApplicationB

2022-09-04

项目信息 开源地址:https://gitee.com/dotnetchina/Furion 文档地址:https://dotnetchina.gitee.io/furion/ 开源协议:MIT MIT 许可证 版权 (c) 2020-2022 百小僧, Baiqian Co.,Ltd 和所有贡献者 特此免费授予任何获得本软件副本和相关文档文件(

2022-08-12

序言 在重构 Furion 的定时任务模块时发现 Hangfire 开源的 Cron 解析工具类不够强大:不支持星期,不支持完整的 Cron 表达式解析。翻遍了 Github 和 Nuget 没找到一个完完整整支持 Cron 的 .NET 库。 所以,机会来了。😊 TimeCrontab &n

2021-11-09

的模式,可以与 Angular、React 和其他流行的前端 JavaScript 框架一起使用。添加了 HTTP/3 以便 ASP.NET Core、HttpClient 和 gRPC 都可以与 HTTP/3 客户端和服务器交互。文件 IO 现在支持符号链接,并通过从头开始重新编写FileStream大幅提升了

2022-06-30

一个跨平台(Windows、Linux 和 macOS)的自动化和配置工具/框架,可以很好地与你现有的工具配合,并为处理结构化数据(如 JSON、CSV、XML 等)、REST API 和对象模型而优化。它包括一个命令行 Shell、一种相关的脚本语言和一个处理

2022-09-12

String 10)增强:like;Op添加likeLeft,likeRight,likeLeftRight(参数值由框架负责转义);打印SQL日志作相应转义 11)增强:ExcelReader数据列数目动态计算 12)增强:SQLite日期类型 (date) 匹配转换支持 13)链式编程SelectImpl,UpdateImpl调整字段检测. fixed bug: 1)

2022-09-06

 ShopWind 是一款基于 Yii2.0 框架深度重构的 B2B2C、O2O 行业的电商系统软件,您可以轻松创建和发布属于自己品牌的专业的电商平台,进行全方位的品牌宣传和产品推广。ShopWind v3.x 标准版开始走向开源,打造一款完全开源的电

2022-04-15

NET 7 Preview 3 已发布, .NET 7 的第三个预览版包括对可观察性、启动时间、代码生成、GC 区域、Native AOT 编译等方面的增强。 Native AOT 编译 Native AOT 的主要优势在于启动时间、内存使用、访问受限平台(不允许 JIT)以及磁盘

2022-09-09

。 科技网站 Phoronix 指出,今年早些时候 Imagination 曾发布了一个开源的 PowerVR Vulkan 驱动,并将其并入主线 Mesa;且 Imagination 也一直在为 PowerVR Rogue 开发一个开源的 DRM 内核图形驱动。此次正是通过查看 PowerVR Mesa 的代码,才

2022-08-12

NET 7 发布了最后一个预览版 Preview 7,在此之后将会进入 RC 阶段。 此版本主要变化包括对 System.LINQ、Unix 文件权限、底层结构、p/Invoke 源代码生成、代码生成和 websocket 的改进。 优化System.LINQ System.Linq现在包含Order和OrderDescen

2022-03-26

打开项目文件(.csproj、 .vbproj 或 *.fsproj 文件)。 将目标框架值从 net5.0 更改为 net6.0,目标框架由 or 元素定义。 更多迁移事项可查看。 Visual Studio 16.11 将继续支持 .NET 5.0 SDK 版本,直到 2022 年 12 月 .NET Core 3.1 停止支持。但 .NET

2022-07-21

一个跨平台(Windows、Linux 和 macOS)的自动化和配置工具/框架,可以很好地与你现有的工具配合,并为处理结构化数据(如 JSON、CSV、XML 等)、REST API 和对象模型而优化。它包括一个命令行 Shell、一种相关的脚本语言和一个处理

2022-09-04

rity、Spring Cloud Gateway、SpringBoot、Nacos、Redis、Mybatis-Plus 等框架,开发的一套 SpringCloud 快速开发平台,使用门槛极低,且采用 MIT 开源协议,完全免费开源,可免费用于商业项目等场景。 开发文档:https://maku.net/docs/maku-cloud 演