Skip to main content

1.1 介绍

star fork GitHub stars GitHub forks GitHub license nuget

让 .NET 开发更简单,更通用,更流行。

💐 序言

无私奉献不是天方夜谭,有时候,我们也可以做到。

🍕 名字的由来

故事是这样子的:

自微软宣布 .NET 5 平台消息之后,就琢磨着开发一个基于 .NET 5 平台的开发框架,想做第一个吃 .NET 5 螃蟹尝鲜之人。

一开始想到了 Lazier 作为框架的名称,中文有 更懒 的意思。符合我的 “一切从简,只为了更懒” 的开发理念。

但是 更懒更烂 中文读音相近且没有特色,而且寓意也不是很好,对此换名问题苦恼了好些天。

刚好有一次在 QQ 群中无意间刷到了群友发的 “先知” 单词:Furion [fu:rɪən],就那一刻,就认定它了!

Furion 中文有 先知 的意思,恰好符合我创造框架的初衷。所以,Furion 就诞生了。

🍟 文档地址

🌭 开源地址

🥥 框架拓展包

包类型名称版本描述
nugetFurionnugetFurion 核心包
nugetFurion.PurenugetFurion 纯净版包(不含 EFCore)
nugetFurion.Extras.Authentication.JwtBearernugetFurion Jwt 拓展包
nugetFurion.Extras.DependencyModel.CodeAnalysisnugetFurion CodeAnalysis 拓展包
nugetFurion.Extras.ObjectMapper.MapsternugetFurion Mapster 拓展包
nugetFurion.Extras.DatabaseAccessor.SqlSugarnugetFurion SqlSugar 拓展包
nugetFurion.Extras.DatabaseAccessor.DappernugetFurion Dapper 拓展包
nugetFurion.Extras.DatabaseAccessor.MongoDBnugetFurion MongoDB 拓展包
nugetFurion.Extras.Logging.SerilognugetFurion Serilog 拓展包
nugetFurion.XunitnugetFurion Xunit 单元测试拓展包
nugetFurion.Pure.XunitnugetFurion 纯净版包 Xunit 单元测试拓展包(不含 EFCore)
nugetFurion.Tools.CommandLinenugetFurion Tools 命令行参数解析

🍄 框架脚手架

Furion + EFCore

模板类型名称版本描述
nugetFurion.Template.MvcnugetMvc 模板
nugetFurion.Template.ApinugetWebApi 模板
nugetFurion.Template.AppnugetMvc/WebApi 模板
nugetFurion.Template.RazornugetRazorPages 模板
nugetFurion.Template.RazorWithWebApinugetRazorPages/WebApi 模板
nugetFurion.Template.BlazornugetBlazor 模板
nugetFurion.Template.BlazorWithWebApinugetBlazor/WebApi 模板

Furion + SqlSugar

模板类型名称版本描述
nugetFurion.SqlSugar.Template.MvcnugetMvc 模板
nugetFurion.SqlSugar.Template.ApinugetWebApi 模板
nugetFurion.SqlSugar.Template.AppnugetMvc/WebApi 模板
nugetFurion.SqlSugar.Template.RazornugetRazorPages 模板
nugetFurion.SqlSugar.Template.RazorWithWebApinugetRazorPages/WebApi 模板
nugetFurion.SqlSugar.Template.BlazornugetBlazor 模板
nugetFurion.SqlSugar.Template.BlazorWithWebApinugetBlazor/WebApi 模板

如何使用脚手架

🍎 框架特点

  • 全新面貌:基于 .NET5/6/7+ 平台,没有历史包袱
  • 极少依赖:框架只依赖两个第三方包
  • 极易入门:只需要一个 Inject() 即可完成配置
  • 极速开发:内置丰富的企业应用开发功能
  • 极其灵活:轻松面对多变复杂的需求
  • 极易维护:采用独特的架构思想,只为长久维护设计
  • 完整文档:提供完善的开发文档
  • 跨全平台:支持所有主流操作系统及 .NET 全部项目类型

🥝 功能模块

🥐 框架依赖

Furion 为了追求极速入门,极致性能,尽可能的不使用或减少第三方依赖。目前 Furion 仅集成了以下两个依赖:

麻雀虽小五脏俱全。Furion 即使只集成了这两个依赖,但是主流的 依赖注入/控制反转AOP 面向切面编程,事件总线数据验证数据库操作 等等一个都不少。

🥗 环境要求

  • Visual Studio 2019 16.8 +
  • .NET 5 SDK +
  • .Net Standard 2.1 +

🥪 支持平台

  • 运行环境
    • Windows
    • Linux
    • MacOS/MacOS M1 CPU
    • Docker/K8S/K3S/Rancher
    • Xamarin/MAUI
  • 数据库
    • SqlServer
    • Sqlite
    • Azure Cosmos
    • MySql
    • MariaDB
    • PostgreSQL
    • InMemoryDatabase
    • Oracle
    • Firebird
    • 达梦数据库
    • MongoDB
  • 应用部署
    • Kestrel
    • Nginx
    • Jexus
    • IIS
    • Apache
    • PM2
    • Supervisor
    • 独立发布/单文件
    • 容器(Docker/K8S/K3S/Rancher/PodMan)

🍖 关于性能

Furion 目前采用 Visual Studio 2019 16.8 自带性能测试和 JMeter 进行测试,由于篇幅有限,只贴部分测试图,测试结果如下:

🍻 贡献代码

Furion 遵循 MIT 开源协议,欢迎大家提交 PRIssue

如果要为项目做出贡献,请查看 贡献指南。感谢每一位为 Furion 贡献代码的朋友。