一个应用程序框架,可以将它集成到任何 .NET/C# 应用程序中

一飞开源,介绍创意、新奇、有趣、实用的免费开源应用、系统、软件、硬件及技术,一个探索、发现、分享、使用与互动交流的开源技术 区平台。致力于打造活力开源 区,共建开源新生态!

一、开源项目简介

Furion

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

序言

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

名字的由来?

故事是这样子的:

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

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

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

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

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

二、开源协议

使用MIT开源协议

三、界面展示

四、功能概述

框架特点?

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

    五、技术选型

    框架拓展包?

    名称

    版本

    描述

    Furion

    Furion 核心包

    Furion.Pure

    Furion 纯净版包(不含 EFCore)

    Furion.Extras.Authentication.JwtBearer

    Furion Jwt 拓展包

    Furion.Extras.DependencyModel.CodeAnalysis

    Furion CodeAnalysis 拓展包

    Furion.Extras.ObjectMapper.Mapster

    Furion Mapster 拓展包

    Furion.Extras.DatabaseAccessor.SqlSugar

    Furion SqlSugar 拓展包

    Furion.Extras.DatabaseAccessor.Dapper

    Furion Dapper 拓展包

    Furion.Extras.DatabaseAccessor.MongoDB

    Furion MongoDB 拓展包

    Furion.Extras.Logging.Serilog

    Furion Serilog 拓展包

    Furion.Xunit

    Furion Xunit 单元测试拓展包

    Furion.Pure.Xunit

    Furion 纯净版包 Xunit 单元测试拓展包(不含 EFCore)

    Furion.Tools.CommandLine

    Furion Tools 命令行参数解析

    框架脚手架?

    Furion + EFCore?

    名称

    版本

    描述

    Furion.Template.Mvc

    Mvc 模板

    Furion.Template.Api

    WebApi 模板

    Furion.Template.App

    Mvc/WebApi 模板

    Furion.Template.Razor

    RazorPages 模板

    Furion.Template.RazorWithWebApi

    RazorPages/WebApi 模板

    Furion.Template.Blazor

    Blazor 模板

    Furion.Template.BlazorWithWebApi

    Blazor/WebApi 模板

    Furion + SqlSugar?

    名称

    版本

    描述

    Furion.SqlSugar.Template.Mvc

    Mvc 模板

    Furion.SqlSugar.Template.Api

    WebApi 模板

    Furion.SqlSugar.Template.App

    Mvc/WebApi 模板

    Furion.SqlSugar.Template.Razor

    RazorPages 模板

    Furion.SqlSugar.Template.RazorWithWebApi

    RazorPages/WebApi 模板

    Furion.SqlSugar.Template.Blazor

    Blazor 模板

    Furion.SqlSugar.Template.BlazorWithWebApi

    Blazor/WebApi 模板

    框架依赖?

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

  • MiniProfiler:性能分析和监听必备
  • Swashbuckle:Swagger 接口文档
  • 麻雀虽小五脏俱全。Furion 即使只集成了这两个依赖,但是主流的 依赖注入/控制反转,AOP 面向切面编程,事件总线,数据验证,数据库操作 等等一个都不少。

    环境要求?

  • Visual Studio 2019 16.8 +
  • .NET 5 SDK +
  • .Net Standard 2.1 +
  • 支持平台?

  • 运行环境WindowsLinuxMacOS/MacOS M1 CPUDocker/K8S/K3S/RancherXamarin/MAUI
  • 数据库SqlServerSqliteAzure CosmosMySqlMariaDBPostgreSQLInMemoryDatabaseOracleFirebird达梦数据库MongoDB
  • 应用部署KestrelNginxJexusIISApachePM2Supervisor独立发布/单文件容器(Docker/K8S/K3S/Rancher/PodMan)
  • 关于性能?

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

    六、源码地址

    访问一飞开源:https://code.exmay.com/

    声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

    上一篇 2022年10月24日
    下一篇 2022年10月25日

    相关推荐