信息系统开发平台OpenExpressApp -代码目录说明
本篇将对OpenExpressApp的SVN目录进行说明,读完之后大家能够熟悉OpenExpressApp的目录结构,这样可以从整体上更好的去理解和查看代码。由于时间关系,有些代码实现还有待修改,也希望大家在查看过程中多提出重构或修改的建议:)
SVN目录
- OpenExpressApp:OpenExpressApp框架代码
OpenExpressApp.Host.WPF:WPF客户端宿主启动程序,打开后会根据部署的程序集装载Library和Module目录下的模块
OpenExpressApp.MetaModel:框架基于模型开发,这是元模型目录单元,目前主要支持UI模型
OpenExpressApp.Module:框架模块目录,由于框架将同时支持C/S、B/S等多种表现形式,把这些表现形式的共性抽取出来存在这这个目录,以便后续支持多客户端
OpenExpressApp.Module.WPF:特定于WPF具体实现的模块目录。
OpenExpressApp.Module.WPF.Style:支持WPF样式程序集,作为扩展表现样式用,可以实现多个程序集,通过替换和切换展现多种样式
OpenExpressApp.Server.WPFHost:服务器端WCF宿主,由于IIS有时在客户机器上安装有点麻烦,这里就提供了一个简单的WPF的WCF宿主
CodeGen:CodeSimth的VS项目,方便在VS中进行代码生成 - Lib:OpenExpressApp发布目录,包括框架发布程序集以及引用第三方程序集,还有一个代码模板目录
CodeGen:包括两个CodeSmith模板,一个子对象,一个根对象类库模板
Library:在客户端和服务器端exe目录下都存在这个目录,存放业务类库程序集
Module:在客户端exe目录下都存在这个目录,存放业务类客户端功能扩展程序集
- Example:示例代码目录
- GIX4:产品开发目录,特定项目的开发目录,现在一般包括两个目录:Library和Module.WPF(支持WPF)
XXX.Library:项目业务类库单元
XXX.Module.WPF:项目客户端功能扩展 - OpenSource:引用的开源代码,方便大家获取和查看引用的开源代码
doc:部分介绍文档
XXX:各个开源项目源代码
AvalonDock:类似VS的泊靠WPF控件
CompositeWPF、Wpf-Contrib、wpfToolkit:codeplex中WPF的开源项目
CSLA:CSLA框架,代码中加入了LiteORM代码
由于现在主要实现了WPF的客户端,下面对OpenExpressApp.Module.WPF的目录进行简单的讲解,以便大家能够有所了解。
OpenExpressApp.Module.WPF说明
- AutoUI:UI自动生成功能,实现了ListObjectView、DetailObjectView、CondtioQueryObjectView、NavigateQueryObjectView,后面会对框架的View单独进行讲解
- Command:实现WPF Command
Pattern:第三方Command实现
ObjectEditCommand:对象通用代码,由于时间关系,对树形支持还没有很好的控件可以使用,现在代码有些内部会判断是否树形 - Controls:WPF控件,有树形对象列表控件(第三方),我只是组合起来而已,还有一个下拉列表控件(支持树形和列表)
- Editors:DetailObjectView的属性编辑器、Grid和Tree单元格属性编辑器
- Images:Command对于的图片,根据Image名称和Command名称自动关联
- Resources:样式资源,现在有下拉列表控件资源LookupListPropertyEditorControl.xaml
- SystemModule:OpenExpressApp系统支持的系统模块,有模块导航模块和首页模块
- Templete:支持的窗体模板,现在支持单据样式、列表样式和查询模块样式,后期会单独介绍
- Themes:主题
如果后期增加对ASP.Net MVC的B/S支持,则需要在OpenExpressApp目录下增加一个特定ASP.NET MVC下的模块目录OpenExpressApp.Module.ASPMVC,增加一个IIS的WCF宿主模块OpenExpressApp.Server.IISHost
标签:
OpenExpressApp
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!
2006-10-19 事实模型的两种基本组件:术语与事实