Fur 是 .NET 5 平台下企业应用开发最佳实践框架。
Fur
.NET 5
无私奉献不是天方夜谭,有时候,我们也可以做到。
故事是这样子的: 起初,想开发一个极易入门、极易维护的框架,开发理念为:一切从简,只为了更懒。 所以自然而然想到了:Lazier,也就是 更懒 的意思。但是 更懒 和 更烂 读音相近且中文名没有特色,对此换名问题我苦恼了好几天。 刚好有一次我在博客园中帮一个博友解答问题,解决后博友赞扬我对 .NET Core 颇有了解,我就顺嘴回答了一句:“略懂皮毛”。 就这时,脑瓜子灵机一动,干脆起名为:“皮毛”?英文单词 “Fur [fɜː(r)]”,单词又短而且中文读音既俗气又顺口。 所以,Fur 就诞生了。 之后就有了 “小僧不才,略懂皮毛(Fur)。” 广告语 和 furos.cn 域名。
故事是这样子的:
起初,想开发一个极易入门、极易维护的框架,开发理念为:一切从简,只为了更懒。
所以自然而然想到了:Lazier,也就是 更懒 的意思。但是 更懒 和 更烂 读音相近且中文名没有特色,对此换名问题我苦恼了好几天。
刚好有一次我在博客园中帮一个博友解答问题,解决后博友赞扬我对 .NET Core 颇有了解,我就顺嘴回答了一句:“略懂皮毛”。
就这时,脑瓜子灵机一动,干脆起名为:“皮毛”?英文单词 “Fur [fɜː(r)]”,单词又短而且中文读音既俗气又顺口。
所以,Fur 就诞生了。
之后就有了 “小僧不才,略懂皮毛(Fur)。” 广告语 和 furos.cn 域名。
Fur LOGO 设计由 F U R 三个单词组成:
我相信很多人看到 Fur 的 LOGO 时都会问:“为什么选择奶牛?”,因为 那些年吹过的牛逼都实现了 。
之所以选择 奶牛 是因为 牛 具有脚踏实地,任劳任怨的做事风格,同时 奶牛 意味着丰富的营养价值,正如 Fur 所能带给你的。
Inject()
Fur 为了追求极速入门,极致性能,尽可能的不使用或减少第三方依赖。目前 Fur 仅集成了以下三个依赖:
AutoMapper
Swagger
麻雀虽小五脏俱全。Fur 即使只集成了这三个依赖,但是主流的 依赖注入/控制反转,AOP 面向切面编程,事件总线,数据验证,数据库操作 等等一个都不少。
目前文档正在逐步完善中。
Stars:1.4k 开发团队:22 人 代码提交:1355 次代码提交 贡献者:32 个贡献者 Issues:完成 137 个,进行中 2 个 PR:合并 54 个,关闭 16 个 发布版本:100 次 文档:完成 59 篇 Nuget 下载:6.33k QQ群:505 + 247 人 线上直播:27 次
新特性 [新增] 网络请求 `RemoteRequest` 组件 [#I1YYWD](https://gitee.com/monksoul/Fur/issues/I1YYWD) [新增] `.AddInjectBase()` 注入,只包含基础服务注入 [新增] 所有服务都支持 `IServiceCollection` 和 `IMvcBuilder` 注入 [新增] 抛异常状态码设置功能 `StatusCode` [新增] `Swagger` 序列化支持 `Pascal` 属性命名方式 [新增] `[NonUnify]` 特性,支持配置 `Aciton` 跳过规范化结果处理 突破性变化 [更新] 所有的包为 `.NET 5` 正式版 [调整] `[DataValidation]` 命名空间为 `System.ComponentModel.DataAnnotations`,保持和微软一致 [调整] `[NonValidation]` 命名空间为 `Microsoft.AspNetCore.Mvc`,保持和微软一致 [调整] `[ApiDescriptionSettings]` 命名空间为 `Microsoft.AspNetCore.Mvc`,保持和微软一致 [调整] `[ApiSeat]` 命名空间为 `Microsoft.AspNetCore.Mvc`,保持和微软一致 [调整] `[UnifyResult]` 命名空间为 `Microsoft.AspNetCore.Mvc`,保持和微软一致 问题修复 [修复] 工作单元 `[UnitOfWork]` 并发下异常 bug [修复] 动态 WebApi 全局配置 `KeepVerb` 无效 bug [修复] 动态 WebApi 指定特定后缀并未移除 bug [修复] `SqlProxy` 代理异步处理 bug [修复] 数据库类型 `Datetime` 转 `DateTimeOffset` bug [修复] 属性首字母大小写序列化不匹配出现 `null` bug [修复] 对象序列化中文出现乱码 bug [修复] 默认序列化配置无效 bug [修复] 数据库非依赖注入方式提交无效 bug [修复] 应用程序池提交所有 `DbContext` 空异常 bug [修复] `Saas` 多租户 `Tenant` 类型字符串属性在 `MySql` 数据库下出现 `longtext` 类型 bug [修复] 规范化结果指定`[ProduceResponeseType]` 配置无效 bug [#I24B8P](https://gitee.com/monksoul/Fur/issues/I24B8P) [修复] `Mvc` 自动验证字符串空值 bug [#I24M2T](https://gitee.com/monksoul/Fur/issues/I24M2T) [修复] 枚举注释被覆盖 bug [#I24N6J](https://gitee.com/monksoul/Fur/issues/I24N6J) [修复] 忽略规范化结果无效bug [#I24B8P](https://gitee.com/monksoul/Fur/issues/I24B8P) [修复] `Swagger` 默认 `ContentType` 不是 `applicaiton/json` bug [#I24F3U](https://gitee.com/monksoul/Fur/issues/I24F3U) [修复] 内置 `System.Text.Json` 和 `Newtonsoft.Json` 冲突 bug [#I24F3U](https://gitee.com/monksoul/Fur/issues/I24F3U) 其他更改 [调整] `Fur` 框架域名为:[https://furos.cn](https://furos.cn) [调整] 仓储 `FromSqlRaw` 和 `FromSqlInterpolated` 接口位置 [优化] 数据加解密性能,[#PR70](https://gitee.com/monksoul/Fur/pulls/70) [关闭] [#I24ALB](https://gitee.com/monksoul/Fur/issues/I24ALB) 文档变化 [更新] README.md、框架介绍、数据库上下文、配置选项、多租户、跨域文档
Fur 遵循 Apache-2.0 开源协议,欢迎大家提交 PR 或 Issue。喜欢可以给个 Star。
评论删除后,数据将无法恢复
.NET 5 新框架 Fur 正式版 v1.0.0 发布
Fur是.NET 5平台下企业应用开发最佳实践框架。序言
无私奉献不是天方夜谭,有时候,我们也可以做到。
名字的由来
关于 LOGO
Fur LOGO 设计由 F U R 三个单词组成:
我相信很多人看到 Fur 的 LOGO 时都会问:“为什么选择奶牛?”,因为 那些年吹过的牛逼都实现了 。
之所以选择 奶牛 是因为 牛 具有脚踏实地,任劳任怨的做事风格,同时 奶牛 意味着丰富的营养价值,正如 Fur 所能带给你的。
开源地址
框架特点
.NET 5平台,没有历史包袱Inject()即可完成配置功能模块
框架依赖
Fur 为了追求极速入门,极致性能,尽可能的不使用或减少第三方依赖。目前 Fur 仅集成了以下三个依赖:
AutoMapper还高性能的对象映射Swagger接口文档麻雀虽小五脏俱全。Fur 即使只集成了这三个依赖,但是主流的 依赖注入/控制反转,AOP 面向切面编程,事件总线,数据验证,数据库操作 等等一个都不少。
环境要求
支持平台
文档地址
目前文档正在逐步完善中。
开源周报
本周更新
Fur 遵循 Apache-2.0 开源协议,欢迎大家提交 PR 或 Issue。喜欢可以给个 Star。