iis服务器助手广告广告
返回顶部
首页 > 资讯 > 精选 >Winform开发框架中的通用附件管理模块是什么
  • 376
分享到

Winform开发框架中的通用附件管理模块是什么

2023-06-17 08:06:05 376人浏览 泡泡鱼
摘要

这篇文章将为大家详细讲解有关winform开发框架中的通用附件管理模块是什么,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。在做WinfORM项目的时候,一直有一个梦想,就是希望把所有的组件模

这篇文章将为大家详细讲解有关winform开发框架中的通用附件管理模块是什么,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。

在做WinfORM项目的时候,一直有一个梦想,就是希望把所有的组件模块组合即可组装成一个完整的项目系统(或者至少可以大部分完成)。这即使是梦想,我也一直为之奋斗,每前进一步,我们离梦想就靠近一步。因此,本着这个梦想,我一路走来,开发整理了一系列的组件模块,包括底层的公用类库、Winform分页控件、通用的适应多数据库的查询组件,以及相对高层次一点的组件模块:通用权限管理系统、通用字典管理模块、通用程序自动更新模块、通用附件管理模块,当然还会有更多的组件模块会吸引我继续朝着梦想前进。除了这些,为了提高开发效率,从设计好的数据库,直接生成项目代码,从05年开始至今,一直完善我的代码自动生成工具 Database2Sharp。下面的附图,是我对于目前Winform开发框架以及将来的发展规划,朝着梦想前进,用博客园记录我的前进轨迹以及感想。

Winform开发框架中的通用附件管理模块是什么

本片随笔,还是落地生根,继续介绍我的Winform开发框架中的一环,通用附件管理模块。该模块其实是很通用的一个模块,例如我们的一些日常记录,可能会伴随着有图片、文档等的附件管理,如果为每个业务对象都做一个附件管理,或者每次开发系统都重新做,那么效率肯定没有直接采用通用的附件管理那么方便快捷了。而且在日益增多的项目管理中,我们不需要维护一大堆相同或者类似的代码,而且我的组件都是内置支持多数据库的,对不同的数据库,只需要适当配置即可正常使用,对于组件化的基础性平台以及支持多数据库等方面,特别是项目管理等方面,颇具争议及传奇色彩的园友,吉日嘎拉在文章《分享从带头拼死拼活开发软件项目到不去现场异地坐镇远程遥控照样可以把上海的软件项目管理好》就有很好的阐述,其实他这些总结很实在,有着很好的基础基类(自己构建的或者购买的)总比从头来过的强,术业有专攻,更是厚积薄发积累的体现。

1、多数据库支持模块

Winform开发框架中的通用附件管理模块是什么

我的一贯做法,就是所有的模块,为了应付未知的项目需求,都做成多数据库支持的,虽然看似麻烦了一点,但是由于我提炼的框架,数据库访问类都高度抽象化及完好的封装,因此即使增加多种数据库的支持,其实需要调整的地方极少。

对于上面几种数据库的支持,一般来说,需要增加不同数据库类型的BaseDAL,由于每个不同数据库都需要拥有一个BaseDAL,那么很多相同的操作代码就会发生冗余,因为大多数数据库的基础操作是一样的,只有一部分比较特别,需要进行个性化处理,因此对数据访问层进行优化设计,得到下面的设计图,如下所示。

经过框架抽象,这个BaseDAL类代码很少,基本上通用的数据库操作,已经放到了AbStractBaseDAL超级基类进行封装,即使对于一些不同数据库操作不同,我们也尽可能抽象放到上面基类了,BaseDAL只需要实现一些特殊的操作即可。

Winform开发框架中的通用附件管理模块是什么

2、模块控件化,***化降低开发工作

为了减少重复开发,要求控件尽可能考虑实际的需求情景。一般来说,我们在数据编辑界面,会有两个需求,一个是管理与数据记录对应的附件列表,一个是维护自己的附件信息,下面对这两个需求进行描述和讲解。

1)管理与数据记录对应的附件列表

首先我们创建一个独立的控件,用于放到编辑数据记录窗口里面,如下所示。

Winform开发框架中的通用附件管理模块是什么

这样在项目中集成(如数据编辑窗口),直接拖动这个控件到界面中,运行就可以看到下面的效果了。

由于一般创建记录的时候,给他指定一个GUID的附件组ID,这样我们在数据记录保存前,我们就可以上传附件了,如下所示。

Winform开发框架中的通用附件管理模块是什么

而且在这个过程中,可以随时查看自己在该记录中已经上传的附件。

Winform开发框架中的通用附件管理模块是什么

如果附件不够,可以随时启动上传操作,附件支持多选文件,然后一次性,启动后台线程操作方式,把文件上传及附件记录保存到数据库,界面如下所示。

Winform开发框架中的通用附件管理模块是什么

Winform开发框架中的通用附件管理模块是什么

2)维护自己的附件信息

有时候,我们需要管理自己的个人附件,还需要知道自己在业务模块中上传过哪些附件,这两个是比较常见的场景,这样我们开发一个界面来管理查看这两类附件,就可以满足大多数的要求了,如下所示。

Winform开发框架中的通用附件管理模块是什么

因为个人附件或者业务附件都可能比较多,甚至随着业务的增长,数量可能激增,那么分页就很有必要,如上图下发就是利用我的分页控件模块(纯分页控件模块,不含列表),这个分页控件集合是我博客介绍得比较多的一个控件来的,而且这个是其中之一的纯分页控件,可以适用于所有分页的场景,而不仅仅是用来显示二维表这么简单。当然,这个纯分页控件的使用也是简单易用的,可以用在各种需要分页显示的场合中,这个ListView就是其中之一,还可以用在图片展示等更多场景。

3、集成图片查看控件

由于是附件管理,因此有可能上传各种文件,包括Word文档、excel文档、压缩文件,以及各种类型的图片,因此为了方便对图片的查看,这个控件集成了图片查看控件,可以非常方便直接读取图片附件的数据流作为对象展示,该图片控件支持对图片的滚动放大缩小、左右翻转、选择放大、图片移动、保存图片等功能,不需要查看,直接使用ESC退出即可。

Winform开发框架中的通用附件管理模块是什么

当然对于其他不是图片的格式附件,由于不知道或者很难直接查看,因此提示用户保存到本地然后提示打开查看即可,如下所示。

Winform开发框架中的通用附件管理模块是什么

4、集成到WCF开发框架中

为了最可能、***程度的体现系统界面的一致性和应用完备性,我也开发了适用于WCF开发框架的附件上传模块,这样就可以在更多的开发场合上使用,而且由于附件管理模块的集中化,更加方便维护代码了。

Winform开发框架中的通用附件管理模块是什么

其实WCF开发框架模式下的附件管理更有意义,因为如果是纯粹的本地文件管理,可能体现不出网络化的附件管理优势,这样通过WCF的架构,所有的附件数据都可以在各个不同的地方、各个不同的网络环境下进行访问,分布式的优势更加明显,这也是WCF开发框架的相同优势。

以上就是我对附件管理模块的封装,希望朝着WInform业务模块组件化、最终产品高度定制化的理想前进,以最快的速度搭建好最终产品,以高稳定性和统一性的组件界面或者客户的信赖和赞许。

进一步来说,我的模块化的Winform开发框架,对开发业务系统的企业来说,甚至只需要个别人掌握组件代码的维护和更新,让更多的开发人员投入到实际的业务开发或者控件使用的阵营中去即可,既可有效保护产品的安全性和统一性,也可以更高效率的开发一个新系统,而不需要企业什么基础性模块都需要开发人员参与,重新弄出一堆很难统一化的基础性产品来。回应开头的一句话,就是术业有专攻,更是厚积薄发的积累的体现。

关于Winform开发框架中的通用附件管理模块是什么就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。

--结束END--

本文标题: Winform开发框架中的通用附件管理模块是什么

本文链接: https://www.lsjlt.com/news/288093.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Winform开发框架中的通用附件管理模块是什么
    这篇文章将为大家详细讲解有关Winform开发框架中的通用附件管理模块是什么,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。在做Winform项目的时候,一直有一个梦想,就是希望把所有的组件模...
    99+
    2023-06-17
  • Winform开发框架中的同化对话框样式分别是什么
    本篇文章为大家展示了Winform开发框架中的同化对话框样式分别是什么,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。1)基于传统经典模式的界面,采用了OutLookBar工具条以及鼎鼎有名的Weif...
    99+
    2023-06-17
  • Node.js中Nestjs框架的模块机制是什么
    这篇文章主要介绍“Node.js中Nestjs框架的模块机制是什么”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“Node.js中Nestjs框架的模块机制是什么”文...
    99+
    2024-04-02
  • HTML5中的移动开发框架是什么
    小编给大家分享一下HTML5中的移动开发框架是什么,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!   IONIC   ION...
    99+
    2024-04-02
  • 如何使用Python中的模块管理工具进行软件开发
    如何使用Python中的模块管理工具进行软件开发在Python的世界里,有许多优秀的第三方模块可以帮助我们更高效地开发软件。然而,当项目规模逐渐增大时,引入的模块也会越来越多,这就需要一个良好的模块管理工具来管理这些模块之间的依赖关系。Py...
    99+
    2023-10-22
    模块管理工具 Python软件开发
  • Laravel框架在Java开发中的应用价值是什么?
    随着互联网的发展,越来越多的企业开始使用Java作为后端语言进行开发。Java语言的优势在于稳定性和安全性,但是开发过程中需要大量的代码编写和维护。这时候,使用一个优秀的框架可以极大地提高开发效率和代码质量。Laravel框架就是一个非常...
    99+
    2023-11-14
    linux unix laravel
  • ASP 框架开发技术:文件处理的最佳实践是什么?
    ASP.NET 是一个强大的 Web 开发框架,它提供了许多强大的工具和功能,让开发人员能够轻松地构建高效的 Web 应用程序。在 ASP.NET 中,文件处理是一个非常常见的任务,因此在本文中,我们将分享一些 ASP.NET 中文件处理...
    99+
    2023-09-17
    框架 开发技术 文件
  • 分布式应用开发中,ASP 框架路径管理的难点与解决方案是什么?
    在分布式应用开发过程中,路径管理是一个非常重要的问题。尤其是在使用 ASP 框架时,路径管理问题会更加突出。ASP 框架的路径管理包括虚拟路径和物理路径两种。虚拟路径是应用程序的相对路径,而物理路径是指硬盘上的实际路径。ASP 框架路径管...
    99+
    2023-10-19
    框架 path 分布式
  • Brainstorm框架在危机管理中的角色是什么
    问题分析:Brainstorm框架可以帮助团队快速识别和分析危机的根源和影响因素,帮助团队全面了解危机的本质和规模。 解决方...
    99+
    2024-03-08
    Brainstorm
  • 什么是Python中的path模块?如何使用它来管理文件路径?
    Python是一种高级编程语言,它拥有广泛的应用领域,例如数据分析、机器学习、网络爬虫等。在这些应用中,文件操作是非常常见的操作。Python提供了一个path模块,它可以帮助我们管理文件路径。本文将介绍path模块的基本知识和使用方法。 ...
    99+
    2023-06-05
    容器 path 异步编程
  • 如何使用Python中的模块、扩展库和框架开发一个完整的软件系统
    如何使用Python中的模块、扩展库和框架开发一个完整的软件系统Python作为一种高级编程语言,非常适合用于开发各种软件系统。通过使用Python的模块、扩展库和框架,开发人员可以快速构建功能强大、可靠稳定的软件系统。本文将介绍如何使用P...
    99+
    2023-10-22
    框架 模块化 扩展库
  • NPM包管理器在Java开发中的作用是什么?
    随着前端技术的发展,NPM已经成为了前端开发中最常用的包管理器,但是,NPM在Java开发中同样具有重要的作用。本文将探讨NPM在Java开发中的作用及其优势,并演示一些相关的代码。 一、NPM在Java开发中的作用 1.包管理 NPM是...
    99+
    2023-11-10
    leetcode 容器 npm
  • 为什么Spring是Web应用程序开发的首选框架?
    Spring是当今最流行的Java开发框架之一,尤其在Web应用程序开发中,Spring已经成为了首选框架。那么为什么Spring如此受欢迎呢?本文将详细介绍Spring框架的优点,并通过演示代码来阐述其强大的特性。 一、Spring框架的...
    99+
    2023-09-02
    leetcode spring 响应
  • 框架同步:ASP 开发技术中最新的趋势是什么?
    ASP是一种广泛使用的Web应用程序开发框架,它使用了动态脚本语言,如VBScript和JScript,以及服务器端组件,如ActiveX控件和COM对象。随着技术的不断发展,ASP开发技术也在不断地更新和改进。其中最新的趋势之一就是框架同...
    99+
    2023-09-19
    开发技术 框架 同步
  • C++多进程并发框架FFLIB中Tutorial的原理是什么
    C++多进程并发框架FFLIB中Tutorial的原理是什么,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。特意采用了Broker模式,是吸收了MPI和Erlan...
    99+
    2023-06-17
  • php框架中为什么这么多开源的后台管理要重构处理
    本文将为大家详细介绍“php框架中为什么这么多开源的后台管理要重构处理”,内容步骤清晰详细,细节处理妥当,而小编每天都会更新不同的知识点,希望这篇“php框架中为什么这么多开源的后台管理要重构处理”能够给你意想不到的收获,请大家跟着小编的思...
    99+
    2023-06-06
  • 运维开发中的接入管理方法是什么
    这篇文章主要介绍“运维开发中的接入管理方法是什么”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“运维开发中的接入管理方法是什么”文章能帮助大家解决问题。如果把上面的路径和技术序列联系起来,就可能是下面...
    99+
    2023-06-04
  • GO语言中的缓存管理:容器框架的实现原理是什么?
    随着网络技术的不断发展,数据量的不断增加,对数据的快速响应成为了当今互联网应用的重要问题。在这个背景下,缓存技术作为一种优化手段越来越受到开发者的关注。而GO语言因为其高效性、简洁性和可扩展性,成为了越来越多开发者选择的语言。那么,在GO...
    99+
    2023-07-24
    容器 框架 缓存
  • 为什么 ASP 是开发自然语言处理框架的最佳选择?
    ASP,全称为 Active Server Pages,是一种基于服务器端的动态网页技术,它可以让开发人员使用脚本语言来编写动态网页。而在自然语言处理领域,ASP同样是开发自然语言处理框架的最佳选择,本文将从以下几个方面详细阐述。 一、AS...
    99+
    2023-10-21
    自然语言处理 框架 索引
  • Python中使用import运行模块的原理是什么
    本篇文章给大家分享的是有关Python中使用import运行模块的原理是什么,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。python可以做什么Python是一种编程语言,内置...
    99+
    2023-06-14
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作