一个基于.NET8+WPF开源的简单的工作流系统

项目介绍

AIStudio.Wpf.AClient 是一个基于 WPF (Windows Presentation Foundation) 构建的客户端框架,专为开发企业级应用而设计。该项目目前版本为 6.0,进行了全面优化和升级,提供了丰富的功能和模块,以满足不同场景下的开发需求。

框架截图

项目特点

  • 自动升级(待部署):虽然当前版本尚未正式部署自动升级功能,但未来计划实现客户端的自动更新,方便用户及时获取最新版本。

  • 采用 Prism.DryIoc:项目采用 Prism 框架进行 MVVM(Model-View-ViewModel)架构设计,并选用 DryIoc 作为依赖注入容器。这一选择提升了代码的可维护性和可扩展性。

  • AvlonDock 的 Prism 实现:项目集成了 AvlonDock 控件库,通过 Prism 框架实现了灵活且强大的界面布局和窗口管理功能。

  • AOP(面向切面编程):使用 AOP 实现日志记录等横切关注点,减少了代码冗余,提高了系统的可维护性和灵活性。

  • 代码生成器:内置了代码生成器,支持从数据库表自动生成对应的 WPF 页面和 ViewModel,极大提高了开发效率。

  • 工作流系统:项目包含了工作流编辑器与后台实现,支持用户自定义工作流,并能在后台执行和管理这些工作流。

  • 安装包制作:提供了详细的指导,帮助开发者制作自定义安装界面的安装包,方便软件的分发和部署。

  • 本地服务启动:项目包含了本地服务的启动和管理模块,支持开发者根据需要启动和管理本地服务。

  • 通用 CRUD 配置:无需定义复杂的类,只需在数据库中添加相应的数据,即可实现通用 CRUD(增删改查)功能。

  • 拖拽式编程:支持拖拽式编程,用户可以通过拖拽的方式快速构建和定制界面,提升开发效率和用户体验。

  • 与 BS(Blazor)共享结构模式:项目采用了与 Blazor 相同的后端框架(AIStudio.Blazor.App),方便开发者在客户端和服务端之间进行代码复用和统一管理。

  • Prism 区域窗口多开与隔离:支持 Prism 区域窗口的多开和隔离,使得开发者能够灵活管理多个窗口和界面,提升应用的交互性和用户体验。

使用技术栈

  • 前端:WPF(Windows Presentation Foundation)。

  • 后端ASP.NET Core(采用 AIStudio.Blazor.App 框架)。

  • 依赖注入:Prism.DryIoc。

  • AOP:用于日志记录和其他横切关注点。

  • 控件库:AvlonDock、自定义 WPF 控件库(AI-wpf-controls)。

项目演示效果

开源地址

https://gitee.com/akwkevin/aistudio.-wpf.-aclient

优秀项目和框架精选

该项目已收录到C#/.NET/.NET Core优秀项目和框架精选中,关注优秀项目和框架精选能让你及时了解C#、.NET和.NET Core领域的最新动态和最佳实践,提高开发工作效率和质量。坑已挖,欢迎大家踊跃提交PR推荐或自荐(让优秀的项目和框架不被埋没🤞)。

相关推荐
0***1416 分钟前
C在物联网中的Azure Sphere
物联网·microsoft·azure
J***Q29216 分钟前
C在云计算中的Azure函数
microsoft·云计算·azure
BD_Marathon17 分钟前
sbt 编译打包 scala
开发语言·后端·scala
雾岛听蓝25 分钟前
C++ 入门核心知识点(从 C 过渡到 C++ 基础)
开发语言·c++·经验分享·visual studio
7***374544 分钟前
Java设计模式之工厂
java·开发语言·设计模式
上不如老下不如小1 小时前
2025年第七届全国高校计算机能力挑战赛初赛 Python组 编程题汇总
开发语言·python·算法
qyhua1 小时前
对称加密对接指南:如何正确使用独立密钥解密四川省充换电平台数据(AES + IV 实战详解)
microsoft
程序员小白条1 小时前
你面试时吹过最大的牛是什么?
java·开发语言·数据库·阿里云·面试·职场和发展·毕设
小年糕是糕手1 小时前
【C++】类和对象(二) -- 构造函数、析构函数
java·c语言·开发语言·数据结构·c++·算法·leetcode
豐儀麟阁贵1 小时前
8.2异常的抛出与捕捉
java·开发语言·python