首页 > 其他分享 >.NET 8 + WPF 企业级工作流系统

.NET 8 + WPF 企业级工作流系统

时间:2024-09-06 11:27:20浏览次数:4  
标签:代码生成 .. 预览 企业级 框架 NET WPF

合集 - .NET 开源工具(11)   1..NET 开源快捷的数据库文档查询和生成工具07-312..NET 结果与错误处理利器 FluentResults08-013..NET+WPF 桌面快速启动工具 GeekDesk08-194.Gradio.NET 支持 .NET 8 简化 Web 应用开发08-265..NET 开源实时监控系统 - WatchDog08-276.实用接地气的 .NET 微服务框架08-287..NET 开源报表神器 Seal-Report08-308..NET 最好用的验证组件 FluentValidation09-039..NET 8.0 文档管理系统网盘功能的实现09-04 10..NET 8 + WPF 企业级工作流系统09-05 11..NET 多版本兼容的精美 WinForm UI控件库09-06 收起  

阅读目录

前言

推荐一款基于.NET 8、WPF、Prism.DryIoc、MVVM设计模式、Blazor以及MySQL数据库构建的企业级工作流系统的WPF客户端框架-AIStudio.Wpf.AClient 6.0。

项目介绍

框架采用了 Prism 框架来实现 MVVM 模式,不仅简化了 MVVM 的典型应用场景,还充分利用了依赖注入(DI)、消息传递以及容器管理的优势。

网上有很多标准的MVVM的使用方法,但是没有形成一个系统级的框架。本框架从登录到具体业务的使用,还有自动升级都搭建完成。

后端使用ASP.NET Core,采用的是AIStudio.Blazor.App的框架(与BS使用相同后台)。

另外框架还引入了面向切面编程(AOP)和模型关联映射(MAP)等高级特性,进一步增强了系统的扩展性和灵活性。

 

功能模块

1、自动更新软件。

2、使用 Prism.DryIoc 而非 Prism.Unity。

3、用 Prism 实现 AvalonDock 步骤。

4、通过 AOP 记录日志。

5、代码生成器的设计思路。

6、工作流实现策略(含编辑器和后端)。

7、创建自定义安装界面的安装包方法。

8、本地服务启动方法。

9、通用 CRUD 配置,无需定义类,直接在数据库中添加数据。

10、实现拖拽编程。

11、与BS(blazor)使用相同的结构模式,如果BS与CS进行代码统一。

12、Prism 区域窗口多开与区域注册隔离实现。

快速预览

WPF客户端下载可以直接运行,默认配置文件 AIStudio.Wpf.Client.exe.Config

复制代码
<appSettings>
    <add key="Title" value="AIStudio" />
    <add key="Language" value="中文" />
    <add key="FontSize" value="16" />
    <add key="FontFamily" value="宋体" />
    <add key="Accent" value="BlueGray" />
    <add key="Theme" value="BaseGray11" />
    <add key="NavigationLocation" value="Left" />
    <add key="NavigationAccent" value="Dark" />
    <add key="TitleAccent" value="Normal" />
    <add key="ToolBarLocation" value="Top" />
    <add key="Version" value="1.0.20201115-rc3" />
    <add key="ServerIP" value="http://localhost:5000/" />
    <add key="UpdateAddress" value="http://localhost:5000//update" />
 </appSettings>
复制代码

1、快速预览方式1

其中ServerIP就是后台接口地址。

账号密码:Admin,Admin。

2、快速预览方式2

不需要服务器,客户端直接使用SQLite本地数据,客户端独立运行。

账号密码Admin, Admin

<add key="ServerIP" value=""/> 
<add key="UpdateAddress" value="http://localhost:5000/Update/AutoUpdater.xml"/>
<add key="ConString" value="Data Source=Admin.db"/>
<add key="DatabaseType" value="SQLite"/>
<add key="DeleteMode" value="Logic"/>

注释掉ServerIP,那么是使用efcore获取数据,改变ConString和DatabaseType即可。另外,数据库默认删除模式为软删除。

3、快速预览方式3

启动ServiceMonitor,点击启动服务,待本地服务启动后,可运行客户端进行连接。

<add key="ServerIP" value="http://localhost:5000" />

 

快速预览方式可直接在登录界面进行切换。

项目框架

6.0的框架如下

 

系统扩展

如果需要扩展自己的页面,只需要按照这个工程的目录进行扩展即可。

项目功能

1、快速代码生成

在数据库添加新表。

选择代码生成菜单,选中查询回来的新表,区域为你所加界面的工程,比如默认值Base_Manage,将把页面加到AIStudio.Wpf.Base_Manage工程下。

点击生成即可,重新启动客户端即可快速预览(前提是服务端也用代码生成器生成(在web端的代码生成器)了相应的控制器与接口)

 

2、大屏界面(可拖拽,可全屏)

 

3、Form 表单

表单-代码生成,是代码生成器的一种补充。

4、通用CRUD方法

读取数据库配置,生成DataGrid,完全不需要类,后台完成相关接口,前台不需要更改任何代码,只需要在数据库插入脚本即可。

根据类直接生成DataGrid

5、大文件上传与下载

6、多窗口、多屏模式

项目地址

Github:https://github.com/akwkevin/aistudio.-wpf.-aclient

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

控件库: https://gitee.com/akwkevin/AI-wpf-controls

最后

如果你觉得这篇文章对你有帮助,不妨点个赞支持一下!你的支持是我继续分享知识的动力。如果有任何疑问或需要进一步的帮助,欢迎随时留言。

也可以加入微信公众号[DotNet技术匠] 社区,与其他热爱技术的同行一起交流心得,共同成长!优秀是一种习惯,欢迎大家留言学习!

 

2024-09-06 11:16:39【出处】:https://www.cnblogs.com/1312mn/p/18395595

=======================================================================================

标签:代码生成,..,预览,企业级,框架,NET,WPF
From: https://www.cnblogs.com/mq0036/p/18399882

相关文章

  • .NET 8.0 文档管理系统网盘功能的实现
    合集-.NET开源工具(11) 1..NET开源快捷的数据库文档查询和生成工具07-312..NET结果与错误处理利器FluentResults08-013..NET+WPF桌面快速启动工具GeekDesk08-194.Gradio.NET支持.NET8简化Web应用开发08-265..NET开源实时监控系统-WatchDog08-276.实用接地......
  • .NET 多版本兼容的精美 WinForm UI控件库
    前言有粉丝小伙伴在后台留言咨询有没有WinForm控件库推荐,现在就给安排上。.NET平台进行Windows应用程序开发的我们来说,找一个既美观又实用的WinFormUI控件库至关重要。本文将介绍ReaLTaiizor一款不仅具备精美界面、丰富控件选择,还支持从.NETFramework4.8到.NET8......
  • 渗透测试(Penetration Testing)
    渗透测试(PenetrationTesting),通常简称为渗透测试或pentest,是一种评估计算机系统、网络或Web应用安全性的方法。它通过模拟恶意攻击者的行为,来测试系统的防御能力,从而发现和利用安全漏洞。渗透测试的目的是:识别漏洞:发现系统、网络或应用程序中的安全漏洞。验证防御:检查现有的......
  • netstat命令详解
    ‌‌netstat命令是一个强大的网络工具,用于显示网络连接、‌路由表、‌接口统计等信息。‌通过使用不同的参数组合,用户可以获取关于网络活动的详细信息。以下是netstat命令的一些常用参数及其功能:‌‌-a(all)‌:显示所有选项,包括已建立的连接和监听状态的连接。‌-n‌:以数......
  • 首发 最新AWVS/Acunetix Premium V24.8高级版漏洞扫描器(最新版)Windows/Linux下载
    前言AcunetixPremium是一种Web应用程序安全解决方案,用于管理多个网站、Web应用程序和API的安全。集成功能允许您自动化DevOps和问题管理基础架构。AcunetixPremium:全面的Web应用程序安全解决方案Web应用程序对于企业和组织与客户、合作伙伴和员工的联系至关重要。......
  • 利用深度学习实现验证码识别-4-ResNet18+imagecaptcha
    在当今的数字化世界中,验证码(CAPTCHA)是保护网站免受自动化攻击的重要工具。然而,对于用户来说,验证码有时可能会成为一种烦恼。为了解决这个问题,我们可以利用深度学习技术来自动识别验证码,从而提高用户体验。本文将介绍如何使用ResNet18模型来识别ImageCaptcha生成的验证码。......
  • Kubernetes容器生命周期详解:PostStart和PreStop应用案例解析
    1.容器启动命令:容器启动命令指在容器启动时需要执行的命令。通过设置ENTRYPOINT或CMD,可以自定义容器启动时执行的进程。使用了一个简单的Dockerfile来设置ENTRYPOINT命令:FROMubuntuENTRYPOINT["top","-b"]该命令告诉容器启动时运行top命令,并且以-b选项进行批量模式......
  • WPF ListBox ListBoxItem Selected background style
    <Windowx:Class="WpfApp340.MainWindow"xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"xmlns:d="http://schemas.microsoft......
  • Unet改进21:添加AKConv||具有任意采样形状和任意数目参数的卷积核
    本文内容:添加PCONV论文简介摘要。基于卷积运算的神经网络在深度学习领域取得了显著的成果,但标准卷积运算存在两个固有缺陷。一方面,卷积运算被限制在一个局部窗口,不能从其他位置捕获信息,并且其采样形状是固定的;另一方面,卷积核的大小是固定为k×k的,它是一个固定的方形形......
  • Unet改进23:添加DiverseBranchBlock||通过组合不同规模和复杂度的分支来增强单个卷积的
    本文内容:在不同位置添加DiverseBranchBlock目录论文简介1.步骤一2.步骤二3.步骤三4.步骤四论文简介我们提出了一种通用的卷积神经网络(ConvNet)构建块,在不需要任何推理时间成本的情况下提高其性能。该块被命名为多元分支块(DBB),通过组合不同规模和复杂度的分支来增强......