.NET开源工作流组件workflow-core简介及使用
发布网友
发布时间:2024-12-04 02:47
我来回答
共1个回答
热心网友
时间:2024-12-04 03:08
最近想做一个OA相关的网站开发,偶然发现一个名为 workflow-core的轻量级workflow引擎,感觉很有意思。它使用.net standard 2.0开发,可以用于追踪长时间运行的任务状态,功能强大,支持插件形式持久化和多节点并行处理。此引擎内核应用在Conctor项目中,用于作为workflow服务器的核心。
workflow core使用fluent语法编写,代码简洁美观,虽无图形化操作界面,但代码干净清晰。.net standard 2.0是统一.net平台的统一标准库,基于此库开发的项目可以适配.net framework 4.6.1以上及.net core 2.0以上版本。
了解了相关知识后,我尝试按照说明步骤操作。首先,新建一个.net framework 4.6.1以上版本的项目,在Package Manager Console中安装workflow core。由于版本原因,还需额外安装Microsoft.Extensions.Logging 和 Microsoft.Extensions.Logging.Debug包。
开始编写示例代码,新建Sample01,包含构建StepBody、workflow、以及运行流程的关键步骤。StepBody是workflow中需要执行的内容,继承自StepBody虚拟类,重载ExecutionResult Run(IStepExecutionContext context)函数完成工作。workflow通过实现IWorkflow接口,定义一个具有唯一标识和版本号的workflow身份。
万事俱备后,启动workflow服务。通过Injection命名空间下的ServiceCollection添加Workflow相关服务,对于有参数的StepBody,需通过service的AddTransient函数注册,确保正确构造对象。最后,启动workflow主机并执行流程。
整个流程简单明了,通过实例学习,对workflow core有了更深入的理解。这是一款功能强大且易于使用的workflow引擎,适合集成到项目中追踪复杂任务状态,实现自动化流程管理。