Furion
免费
Furion 是基于 MIT 协议的开源 .NET 开发框架,由百签科技(广东)有限公司开发维护。内置动态 Web API、依赖注入ORM、权限管理、定时任务、日志、多租户、事件总线等模块,支持 .NET5/6/7/8/9/10+,NuGet 下载量超 4500 万次。
Furion
核心参数与统计
| 项目 | 规格 |
|---|---|
| 项目名称 | Furion |
| 分类 | .NET 开发框架 |
| 开源许可 | MIT + Apache-2.0 |
| GitHub Stars | 2,200+ |
| Gitee Stars | 14,500+ |
| 编程语言 | C#(.NET) |
| 交付形态 | NuGet 包 / 源码自编译 |
| 目标用户 | .NET 开发者 / 软件企业 / 企业 IT 部门 |
| 核心赞助方(如有) | 百签科技(广东)有限公司 |
开源项目的 GitHub Stars、Forks 和贡献者数量是衡量社区活跃度的关键指标。许可类型决定了商用和二次分发的自由度。Furion 采用 MIT 协议,对商业项目零限制,这是其区别于 AGPL 类框架的核心优势。
Furion 是一款纯粹的 .NET 开发框架,核心定位是降低 .NET 企业级开发的重复劳动,而非一个面向终端用户的 AI 应用。框架通过零侵入设计无缝融入现有 .NET 项目,开发者只需通过 Inject() 方法即可启用大部分功能。其价值在于将动态 Web API、依赖注入ORM、权限管理、定时任务等高频需求封装为开箱即用的模块,让团队把精力集中在业务逻辑而非基础设施搭建上。
用户与市场认可
5000+ 企业生产环境验证:涵盖制造业、金融、电商、教育、政务等多个行业,典型用户包括潍柴动力、冠捷显示科技等大型企业。
社区数据:
- Gitee GVP(最有价值开源项目),14,500+ Star,4,200+ Fork
- GitHub 2,200+ Star,472 Fork
- 165 位贡献者(GitHub)+ 259 位贡献者(Gitee)
- NuGet 平台累计 4,500 万+ 下载量(截至 2026.07)
技术社区口碑:在 .NET 中文社区中被广泛推荐为「首选企业级框架」。开发者反馈集中在「代码量减少 40-60%」「零侵入迁移成本低」「动态 Web API 显著缩短交付周期」。
风险提示:核心维护者仅百小僧一人,团队规模有限。企业级用户在关键业务依赖前应评估维护持续性。
成本优势
| 成本维度 | 说明 |
|---|---|
| 软件许可 | $0(MIT 开源许可,可用于商业项目) |
| 基础设施 | 自备服务器/云资源,无额外框架授权费 |
| 部署运维 | 需 .NET 技术人力,框架本身无额外运维开销 |
| 商业支持 | 社区免费支持 / ¥299-1,299/年增值技术支持 |
开源模式的核心成本优势在于零许可费 + 完全数据主权,但需自行承担部署和运维成本。与 SaaS 方案的总拥有成本对比需要综合考虑软件费+基础设施+人力三个维度。对比 ABP vNext(AGPL 许可),Furion 的 MIT 协议避免了开源传染风险,企业无需为合规付费。
架构与核心能力
- 架构总览:基于 .NET 原生的
IServiceCollection扩展方法实现零侵入注入。核心链路为:启动注册(Inject())→ 运行时扫描 → 动态生成 API 路由 → 请求管道处理(鉴权/日志/缓存/异常)→ 业务逻辑执行 → 响应输出。所有模块通过 NuGet 包按需加载,不强制全量引入。 - 核心引擎:动态 Web API 引擎——通过运行时反射扫描
[DynamicApiController]特性,自动生成 RESTful API 路由和 Swagger 文档,无需手动编写 Controller。权限管理引擎基于 RBAC 模型,与 API 端点自动绑定。定时任务引擎支持 Cron 调度、集群分布式执行和持久化存储。事件总线引擎支持进程内与跨进程发布/订阅、异常重试、事务集成。 - 扩展机制:通过 .NET 原生 DI 容器实现模块化。每个功能(缓存/日志/ORM/多租户)均为独立 NuGet 包,可通过
AddXxx()扩展方法按需启用。社区可基于公开接口开发自定义模块。 - 部署选项:支持 Docker 容器化部署、IIS / Kestrel / Nginx 反向代理、Jenkins CI/CD 集成。提供
dotnet new furionapi脚手架模板一键创建项目。
模型与版本演进
| 版本 | 日期 | 关键变化 |
|---|---|---|
| v4.9.9.36 | 2026-07 | 新增 HTTP 远程声明式请求 ValueTask/ValueTask |
| v4.9.9 | 2026-07 | 常规迭代,修复已知问题 |
| v4.9.2.3 | ~2024 | 支持 [DisplayName] 特性生成 Swagger 注释 |
| v4.8.8.21 | ~2023 | 支持 Jenkins 持续集成发布文档 |
| v4.0 | ~2022 | 架构重构,全面适配 .NET6+ |
| v3.x | ~2021 | 功能扩展,支持微服务和多租户 |
| v2.x | ~2020 | 框架成熟期,社区规模快速增长 |
| v1.x | 2019 | 初始发布,基础功能搭建 |
版本记录以 GitHub Releases 页面为准。框架严格遵循语义化版本,发布节奏活跃(截至 2026.07 已发布 168+ GitHub Release / 183+ Gitee Release)。框架坚持「拒绝 AI 生成核心逻辑」的工程原则,所有框架核心代码均由人工编写和维护。
技术优势
- 架构设计:零侵入设计——不要求项目继承特定基类或实现特定接口(除动态 API 外),通过 .NET 原生的
IServiceCollection扩展方法注入功能。迁移成本低于 ABP vNext 等重型框架。极简依赖——框架核心仅依赖一个第三方包,其余功能均基于 .NET 原生 API 或自研实现。更低依赖图 = 更低冲突概率 + 更快dotnet restore。 - 性能表现:动态 API 引擎通过运行时扫描而非代码生成,避免了代码生成带来的构建时开销。多级缓存(内存 + Redis)支持缓存穿透/击穿/雪崩防护。异步非阻塞设计支撑高并发场景。
- 安全设计:内置 RBAC 权限校验中间件、数据验证管道、异常处理中间件、SQL 注入防护(通过 EF Core 参数化查询)。支持请求频率限制和 CORS 策略配置。
- 可观测性:结构化日志输出(Serilog/NLog/Log4Net),支持写入文件、数据库、Elasticsearch。内置健康检查端点,配合定时任务看板实现运维监控。
部署踩坑指南
基于社区部署经验,以下常见问题:
1. 依赖冲突与环境配置:Furion 对 .NET SDK 版本敏感,不同主版本(.NET6/7/8/9)使用的 API 存在差异。解决方案:优先使用 Docker 部署,通过 mcr.microsoft.com/dotnet/sdk 官方镜像锁定运行时版本。多项目解决方案中确保所有项目 TargetFramework 一致。
2. 动态 API 路由冲突:当多个服务类使用相同的路由前缀时,[DynamicApiController] 可能产生路由冲突导致启动失败。解决方案:在服务类上显式指定 [Route("api/[controller]")] 特性避免自动路由猜测。高版本中可通过 app.UseInject("YourAssemblyName") 限定扫描范围。
3. 定时任务集群锁丢失:Redis 模式下,集群节点间定时任务锁可能因网络分区导致重复执行。解决方案:设置合理的锁过期时间(TaskSchedulerOptions.LockTimeout);关键任务添加幂等性设计(如数据库唯一约束)。
4. 多租户数据隔离配置复杂:行级租户隔离时,EF Core 查询过滤器可能与其他全局过滤器冲突。解决方案:在 OnModelCreating 中显式注册租户过滤器,避免与软删除等过滤器嵌套使用导致的 SQL 生成异常。
如何使用
| 入口 | 安装/使用方式 |
|---|---|
| GitHub 源码 | git clone https://github.com/monksoul/Furion → 安装依赖 → 配置 → 启动 |
| Gitee 源码 | git clone https://gitee.com/dotnetchina/Furion |
| NuGet | dotnet add package Furion |
| 脚手架模板 | dotnet new install Furion.Template.Api → dotnet new furionapi -n MyProject |
# 快速启动
dotnet new furionapi -n MyFurionWebApi
cd MyFurionWebApi
dotnet run --project ./MyFurionWebApi.Web.Entry/MyFurionWebApi.Web.Entry.csproj
// 第一个 API——无需 Controller
using Furion.DynamicApiController;
[DynamicApiController]
public class HelloService
{
public string Say() => "Hello, Furion";
}
产品定价(开源项目通常免费)
| 层级 | 价格 | 包含内容 |
|---|---|---|
| 开源核心 | $0 | 全部核心功能(MIT 协议,商业免费) |
| 文档会员 | ¥299/年 | 完整文档权限优先体验新功能 |
| VIP 会员 | ¥399/季 或 ¥1,299/年 | 专属微信群远程协助 2 小时响应 |
| 企业采购 | 对公转账可开票 | 定制方案 + 技术支持 |
框架本身永久免费,付费仅针对增值文档和技术支持服务。所有价格含税。
应用场景
- 企业信息系统快速开发:CRM、ERP、OA、项目管理等管理类系统的后端 API 搭建。动态 Web API 让一个服务类即可完成增删改查,配合权限和日志模块在企业内快速上线。
- 微服务架构转型:已有 .NET Framework 或 .NET Core 项目需要向微服务演进时,零侵入设计允许逐个服务迁移,配合 Consul/Nacos 实现服务注册发现。
- SaaS 多租户平台:通过多租户模块实现数据库级或行级数据隔离,适合为不同客户提供独立数据空间的 SaaS 产品。
- IoT 数据中台:定时任务(设备状态轮询)+ HTTP 远程请求(API 对接)+ 日志管理(数据采集)协同。
适用人群
- .NET 开发者:寻找开箱即用、文档完善的开发框架,降低重复劳动。
- 软件企业技术团队:正在选型或重构企业级 .NET 项目,需要降低开发成本和维护负担。
- 传统行业 IT 部门:制造业、金融、政务等行业的内部开发团队,技术栈以 .NET 为主。
- 不适配边界:需要 SLA 保障的商业场景、非 .NET 技术栈团队(Java/Go/Node.js)、超大规模微服务治理场景。
竞品对比
| 对比维度 | Furion | ABP vNext | SqlSugar | 原生 .NET Core |
|---|---|---|---|---|
| 开源/闭源 | 开源 | 开源 | 开源 | 开源 |
| 许可类型 | MIT | AGPL(社区版) | LGPL + 商业授权 | MIT |
| 社区活跃度 | Gitee 14.5k★ | GitHub 13k★ | Gitee 5k★ | — |
| 部署复杂度 | 低:零侵入 + NuGet 包引入 | 高:模块架构 + DB Migration | 低:ORM 级别 | 中:需自建全部模块 |
| 企业功能 | 全面内置 | 全面内置 | 仅 ORM | 无开箱功能 |
| 学习成本 | 低(中文文档详尽) | 中(英文文档为主) | 低 | 高(需自行组合) |
| 商业友好度 | ✅ MIT 零限制 | ⚠️ AGPL 传染风险 | ⚠️ LGPL 需注意 | ✅ MIT |
总结与展望
Furion 作为国内 .NET 生态中 Star 数最高、企业采用最广泛的开源开发框架之一,其核心优势在于「零侵入 + 动态 API + 全模块内置」——让 .NET 团队在不增加架构复杂度的情况下,获得接近低代码平台的交付速度,同时保持原生 .NET 的性能和灵活性。
发展风险:框架由百小僧个人主导,百签科技提供商业化支持但团队规模有限。对于超大型关键业务系统,需评估技术支持响应能力与长期维护承诺。免费社区版不做 SLA 保障。建议企业至少采购一份 VIP 会员以获取官方支持渠道,同时保留框架源码 Fork 以应对极端情况。未来方向预计继续围绕 .NET 版本跟进、模块扩展和开发者体验优化。
限制与不适配场景
该工具在以下场景中存在使用限制:
场景适配边界 需要高度行业专业知识的任务、对输出格式有严格规范的场景、需要零错误的自动化流程可能效果不达预期。AI 输出应作为初稿或辅助参考,最终结果需人工核验。
技术限制 上下文长度有限、复杂推理准确性可能不足、免费版有使用额度。建议在正式采用前通过试用验证核心场景的可用性。
版本信息
- v4.9.9 :新增 HTTP 远程声明式请求 ValueTask/ValueTask<T> 返回值类型支持
- v4.9.9 :常规迭代版本,修复已知问题并优化性能
- v4.8.8 :支持 Jenkins 持续集成发布文档
用户评价