news 2026/9/1 5:35:32

零代码审批流程,这个.NET 工作流引擎拿来就能用

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
零代码审批流程,这个.NET 工作流引擎拿来就能用

目录

✨一、它到底是什么?

🤖二、它用了哪些技术?

三、它能解决什么问题?

代码示例

快速上手

🌞写在最后


大家好,我是阿木。

做过系统的兄弟应该都懂,工作流这玩意儿是出了名的难搞:概念一堆、学习曲线陡、流程图还得专业程序员来画,改个审批节点要翻半天引擎文档,排查问题更是头疼。很多项目一到要加审批流程,工期就得往后延。

最近挖到一个开源项目AntFlow.NET,路子很广 —— 它直接把工作流开发的门槛拉到了跟写普通CRUD 一样低,零流程引擎经验也能上手。今天带大家看看。

✨一、它到底是什么?

一句话:一款仿钉钉设计的开源低代码工作流引擎,纯血 .NET 技术栈编写。

它最核心的卖点就一个:让工作流开发像普通 CRUD 一样简单,即便没有流程开发经验的程序员也能快速上手。

具体来说,它干了这么几件事:

  • 全网首个纯 .NET 语言实现的仿钉钉工作流,配置简单、上手简单

  • 高内聚、低耦合:把流程流转业务和引擎执行 API 高度分离,你几乎不用关注流程流转 API,只需要关注业务处理

  • 流程业务和表单业务分离:表单业务处理内聚在一个类里,对开发模式几乎没影响

  • 功能对标钉钉、企业微信、飞书的审批流程,可用于多种业务场景,简单易用、可扩展、可定制、可 SAAS 化

说白了,以前集成工作流是 "你得先学会引擎怎么玩",现在是 "引擎帮你把脏活累活干了,你只管写业务"。

🤖二、它用了哪些技术?

说几个我觉得比较实在的点:

1. 纯血 .NET 技术栈,依赖极少

整个引擎只依赖了几个高质量开源组件:

  • ASP.NET Core 9.0:现代化 Web 框架

  • FreeSql:高性能、强类型 ORM

  • Natasha:动态编译与运行支持

没有乱七八糟的依赖,兼容性强,易于集成,部署也清爽。

2. 丰富的中国式办公场景支持

这一点特别接地气。会签、顺序会签、或签、加批、转办、委托、变更处理人、打回至任意节点、重新提交…… 这些国内企业审批里常见的操作,它全给你备齐了,不用自己造轮子。

3. 多种接入模式,灵活度高

  • 可以独立部署成流程中台,其他业务方通过 API 接入

  • 也可以作为一个独立模块加载到你自己的项目里

看你项目架构怎么舒服怎么来。

4. 多种开发模式,可扩展

  • 低代码模式:适合简单的小型流程,零代码就能开发一个流程

  • DIY 模式:适合复杂的表单数据交互和流转控制,只需要实现一个接口就能快速开发一个全新流程

5. 支持数十种数据库,开箱即用

MSSQL 脚本已经开源了(毕竟 .NET 生态下 SQL Server 采用率高),Oracle、PostgreSQL 脚本获取。ABP 官方集成版也有,在项目的 antflow.abp 目录下。

三、它能解决什么问题?

企业审批流程

请假、报销、采购、合同审批这些常见场景,对标钉钉 / 飞书的审批体验,拖拽配置就行。

OA / 业务系统集成

已有 .NET 项目要加工作流能力,不用换架构,作为模块加载进去就行,或者独立部署成中台通过 API 调用。

复杂表单 + 流转控制

DIY 模式实现一个接口就能搞定,表单业务内聚在一个类里,不用跟流程引擎代码搅在一起。

SAAS 化多租户场景

可定制、可 SAAS 化,适合做平台型产品。

代码示例

"实现一个接口就能开发一个新流程",下面给个示意代码感受一下(具体接口名以项目操作手册为准,手册在 antflownet/docs 文件夹下):

// DIY 模式:实现一个业务处理接口(示意) public class LeaveApprovalForm : IAntFlowForm { // 表单提交时的业务处理 public async Task OnSubmitAsync(FlowContext context) { var form = context.GetFormData(); // 你的业务逻辑:保存请假单、扣年假、发通知…… await _leaveService.CreateAsync(form); await _notifyService.SendToApproverAsync(context.NextApproverId); } // 流程结束时的回调 public async Task OnCompletedAsync(FlowContext context) { var form = context.GetFormData(); if (context.IsApproved) await _leaveService.ApproveAsync(form.Id); else await _leaveService.RejectAsync(form.Id); } }

低代码模式就更简单了,在设计器里拖节点、配条件、绑表单字段,零代码生成一个审批流程,跟在钉钉后台配审批差不多。

快速上手

想跑起来的话,有几个坑提前给你踩了:​​​​​​​

# 克隆 .NET 后端源码 git clone https://gitee.com/antswarm/antflowcore.git

前端注意:.NET 版和 Java 版共用一套前端,前端在 Java 仓库的 antflow-vue 文件夹里(注意不是 antflow-web,那个是 Java 版的出口模块):​​​​​​​

# 克隆 Java 仓库,只取里面的 antflow-vue git clone https://gitee.com/tylerzhou/Antflow.git # 取出 antflow-vue 文件夹运行,其他的删掉就行

数据库注意:不要用 Java 仓库的数据库脚本来初始化AntFlow.NET的数据库,用.NET 项目自己的脚本。MSSQL 本已开源,Oracle/PostgreSQL

操作手册在项目 antflownet/docs 文件夹下,mysql 以外的数据库怎么初始化表、怎么把 demo 的用户表角色表替换成自己系统的表,文档里都写了。

🌞写在最后

工作流这块,传统引擎的学习曲线确实劝退了不少人。AntFlow.NET把门槛拉到 CRUD 级别,纯 .NET 技术栈、依赖少、审批特性全、还能低代码零代码开发,用下来最大的感受就是:真的省事。

项目地址我放这了:

  • Gitee:https://gitee.com/antswarm/antflowcore

  • 独立设计器:https://gitee.com/ldhnet/AntFlow-Designer

  • https://github.com/mrtylerzhou/AntFlow.net

引入地址

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/9/1 5:34:19

原神私服技术拆解:客户端-服务器架构与协议模拟原理

简介:这份下载资源围绕原神5.0私服搭建提供了一套可运行源码与配套说明,定位为面向游戏私服爱好者和有一定技术基础的玩家的实操型教程,解决了从零开始搭建私服时容易遇到的环境配置与客户端对接问题。资源不仅给出环境搭建前需要准备的Java开…

作者头像 李华
网站建设 2026/9/1 5:32:59

ET2020高级定制稳定版:工业协议适配与数据采集稳定性改造实践

简介:ET2020高级定制版稳定版定位为面向专业用户的高端定制软件包,重点解决数据量大、高负载环境下对稳定性和高效任务调度的需求。包内共446个文件,压缩后45.96MB,包含prj工程文件、dll动态库、ini配置文件、emf/plt/dxf等矢量图…

作者头像 李华
网站建设 2026/9/1 5:31:45

Cesium航线规划实战:插值、动态漫游与相机跟随全流程

简介:一套基于CesiumJS的无人机航线规划可运行源码,面向Web GIS开发者和无人机任务规划人员,实现了类似大疆司空2的航点设计、航段插值与三维动态渲染。压缩包内共3个文件,以index.html核心可视化页面、.inscode云端运行配置和.gi…

作者头像 李华
网站建设 2026/9/1 5:31:38

树莓派3B+ROS+CamShift:低配硬件下的视觉跟踪小车实战与避坑指南

简介:面向ROS与OpenCV初学者的视觉跟踪智能小车项目资料包。项目以树莓派3B为主机、Ubuntu虚拟机为从机,通过USB摄像头实时采集视频流,并借助OpenCV完成图像预处理;CamShift算法基于颜色概率分布模型,能够在连续视频帧…

作者头像 李华
网站建设 2026/9/1 5:30:45

基于SpringBoot的水产养殖监测管理平台(源码+lw+部署文档+讲解等)

温馨提示:本人主页置顶文章(点我)开头有 CSDN 平台官方提供的学长联系方式的名片! 温馨提示:本人主页置顶文章(点我)开头有 CSDN 平台官方提供的学长联系方式的名片! 温馨提示:本人主页置顶文章(点我)开头有 CSDN 平台…

作者头像 李华
网站建设 2026/9/1 5:30:40

【Kubernetes从入门到精通】第88篇:多集群管理实战——从单集群到联邦集群的进化之路

上一篇【第87篇】微服务应用K8s化改造实战——从传统部署到云原生 下一篇【第89篇】K8s AI/ML——在K8s上运行机器学习工作负载 摘要 单集群玩得再溜,也架不住业务真上规模——一个集群挂了全公司停摆、一个地域延迟高用户骂街、被一家云厂商锁死不敢动。这时候就…

作者头像 李华