核心内容摘要
大伊香蕉一口入魂:穿越舌尖的灵魂盛宴
ERP WPF框架源码 1ERP 开发框架 2ERP 模块化编程 3以分散解耦的方式编程 4配置方式编程 5界面美观大方可以配置各种图片 6工业上位机与MES开发 7数据库完整 8自动链接数据库方式设定数据库链接方式 9插件是编程开发 10本项目可以VS2017_VS2022均可以开发 11数据库SQLSERVER2008以上均可开发搞ERP开发的兄弟都知道框架选型这事能让人头秃。
最近在折腾一套开源的WPF框架发现它的架构设计有点东西。
比如在模块解耦这块直接上硬核的Prism框架实现动态加载看这个ModuleCatalog配置就明白了modularity:ModuleCatalog xmlnshttp://prismlibrary.com/ modularity:ModuleInfo RefInventoryModule.xap ModuleNameInventory ModuleTypeERP.Modules.InventoryModule, ERP.Client/ /modularity:ModuleCatalog这种声明式配置让模块像乐高积木一样随时插拔特别是当需要给不同客户定制功能时直接注释掉不需要的模块节点就行。
数据库连接池的设计更骚气配置文件里玩嵌套结构ConnectionPools: { MesDB: { Provider: SqlServer, ConnectionString: Server.;DatabaseMES_Prod;, Timeout: 30 }, LogDB: { Provider: Sqlite, ConnectionString: Data Sourcelogs.db, IsReadOnly: true } }框架底层用Polly做了重试策略自动处理网络闪断的情况。
最让我惊艳的是它的样式系统通过资源字典实现主题秒换。
比如这个带动画效果的按钮样式Style TargetTypeButton BasedOn{StaticResource MetroButton} Setter PropertyTemplate Setter.Value ControlTemplate Grid Border x:NameRippleContainer Background{TemplateBinding Background} CornerRadius4 ContentPresenter/ /Border VisualStateManager.VisualStateGroups VisualStateGroup x:NameCommonStates VisualState x:NamePressed Storyboard DoubleAnimation Storyboard.TargetNameRippleEffect Storyboard.TargetPropertyOpacity To
6 Duration0:0:
1/ /Storyboard /VisualState /VisualStateGroup /VisualStateManager.VisualStateGroups /Grid /ControlTemplate /Setter.Value /Setter /Style插件开发接口设计得够直白继承IPlugin接口就能接入系统功能流。
比如实现一个生产看板插件public class ProductionMonitorPlugin : IPlugin, IDashboardWidget { public void Initialize() { // 注入OpcUA数据采集器 Container.ResolveIOpcService().Subscribe(ns3;sProductionRate, UpdateRate); } private void UpdateRate(object value) { // 这里用到了框架的线程调度器 Dispatcher.Current.Invoke(() Rate Convert.ToDouble(value)); } }数据库迁移脚本的处理也够智能框架内置的VersionedMigration类会自动比对版本号执行增量SQLpublic class _20230501_AddEquipmentTable : Migration { public override void Up() { Execute.Sql(CREATE TABLE Equipment ( Id UNIQUEIDENTIFIER PRIMARY KEY, Code NVARCHAR(
NOT NULL, LastMaintenanceDate DATETIME)); } }这套架构最爽的是解耦彻底前几天给注塑厂做MES对接直接把他们的老旧PLC驱动包成DLL扔进Plugins目录就完事了。
不过要吐槽下文档确实简陋得边啃源码边猜设计意图好在项目结构清晰啃起来不算太费牙口。
ERP WPF框架源码 1ERP 开发框架 2ERP 模块化编程 3以分散解耦的方式编程 4配置方式编程 5界面美观大方可以配置各种图片 6工业上位机与MES开发 7数据库完整 8自动链接数据库方式设定数据库链接方式 9插件是编程开发 10本项目可以VS2017_VS2022均可以开发 11数据库SQLSERVER2008以上均可开发