Winform开发框架之字典数据管理

本文涉及的产品
数据管理 DMS,安全协同 3个实例 3个月
推荐场景:
学生管理系统数据库
简介:

好久没写博客了,除了是工作较忙的原因外,其实是也一直在想如何整合我所有的开发经验及技术积累,开发过很多Winform共享软件、Asp.net的WebForm项目,发现很多东西是相互关联很紧密的,但往往我们太忙太懒,要好好整理,并整理出棒棒的一般比较难,但我们没有停步,梦想总会慢慢接近并实现。在做了很多项目之后,发现人的惰性或者惯性很大,因此有机会得好好整理下开发的成功,优化再优化,用的时候就越来越顺手了。

在所有开发过的项目过程,很多如权限管理、字典数据管理模块,都是非常常用的模块,本文主要想介绍下提炼出来,各个项目均可通用的字典数据管理系统(或者叫做模块更为适合),在介绍之前,我想介绍下我的整合路线及一些想法,如下所示:

 

其中框架中所有介绍的内容均为现有开发框架中有的东西及特性,如果要了解Winform框架的多维特点,可以现在最新的共享软件《仓库管理系统》,具体可以参考文章《从开发的软件《备件仓库管理系统》总结的一些经验》进行了解,该共享软件除了整合众多优秀的功能外,一个特点就是数据管理模块也得到了升华。

在Winform框架中,其中权限管理系统、字典管理系统,都是可以做成独立的程序来使用,而且应该可以在程序中引用来查询或者获取相关的字典数据,如找某个键值的字典列表作为下拉列表,而且由于实际项目总,有点是SqlServer、有的是Access数据库的,所以支持多数据库是最好的选择。

 

 在字典数据数据管理工程项目中,我们看到有两个不同的数据访问层,工厂模式通过不同的配置,调用不同的数据访问层,从而实现SqlServer、Access等数据库的支持,当然可以扩展更多的数据库支持,我们先来看看工程项目的视图如下所示:

 

配置文件如下所示

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
  <configSections>
    <section name="dataConfiguration"
             type="Microsoft.Practices.EnterpriseLibrary.Data.Configuration.DatabaseSettings, Microsoft.Practices.EnterpriseLibrary.Data"/>
  </configSections>
  <connectionStrings>
    <add name="DataAccess" providerName="System.Data.OleDb" connectionString="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=E:\我的应用程序\数据字典\SqlDictionary\WHC.Dictionary.UI\bin\Debug\OrderWater.mdb;User ID=Admin;Jet OLEDB:Database Password=;" />
    <add name="DataAccess2" providerName="System.Data.SqlClient"
         connectionString="Persist Security Info=False;Data Source=(local);Initial Catalog=Warehouse;User ID=sa;Password=123456"/>
  </connectionStrings>
  <dataConfiguration defaultDatabase="DataAccess"/>

  <appSettings>
    <!--软件名称-->
    <add key="ApplicationName" value="深田之星仓库管理系统"/>
    <!--开发商名称-->
    <add key="Manufacturer" value="广州爱启迪技术有限公司"/>

    <!--数据字典的数据库类型:access、sqlserver等-->
    <add key="ComponentDbType" value="access"/>
  </appSettings>

</configuration> 

我们通过DictionaryDbType来切换不同的数据库,不用修改代码实现多数据库支持,当然,不同的数据库,需要创建不同的数据库文件,不过数据库结构基本上是一致的。

我们看看该字典管理模块的最终效果,如下所示:

 

字典数据模块做成独立的程序后,一个可以独立运行,也可以在宿主程序中通过DLL方式调用类库来获取字典数据,如下所示:

         private   void  InitDictItem()
        {
            
this .txtManufacture.Items.Clear();
            
this .txtManufacture.Items.AddRange(DictItemUtil.GetDictByDictType( " 供货商 " ));

            
this .txtBigType.Items.Clear();
            
this .txtBigType.Items.AddRange(DictItemUtil.GetDictByDictType( " 备件属类 " ));

            
this .txtItemType.Items.Clear();
            
this .txtItemType.Items.AddRange(DictItemUtil.GetDictByDictType( " 备件类别 " ));

            
this .txtSource.Items.Clear();
            
this .txtSource.Items.AddRange(DictItemUtil.GetDictByDictType( " 来源 " ));


            
this .txtWareHouse.Items.Clear();
            
this .txtWareHouse.Items.AddRange(DictItemUtil.GetAllWareHouse().ToArray());

            
this .txtDept.Items.Clear();
            
this .txtDept.Items.AddRange(DictItemUtil.GetDictByDictType( " 部门 " ));
        }

字典组件模块调用例子Demo程序下载地址也一并提供下载,下载地址如下:

 http://files.cnblogs.com/wuhuacong/DictionaryDemo.rar

本文转自博客园伍华聪的博客,原文链接:Winform开发框架之字典数据管理,如需转载请自行联系原博主。



目录
相关文章
|
8月前
|
存储 SQL NoSQL
HarmonyOS学习路之开发篇—数据管理(分布式数据服务)
分布式数据服务(Distributed Data Service,DDS) 为应用程序提供不同设备间数据库数据分布式的能力。通过调用分布式数据接口,应用程序将数据保存到分布式数据库中。通过结合帐号、应用和数据库三元组,分布式数据服务对属于不同应用的数据进行隔离,保证不同应用之间的数据不能通过分布式数据服务互相访问。在通过可信认证的设备间,分布式数据服务支持应用数据相互同步,为用户提供在多种终端设备上最终一致的数据访问体验。
|
8月前
|
存储 缓存 数据管理
HarmonyOS学习路之开发篇—数据管理(轻量级数据存储)
轻量级数据存储适用于对Key-Value结构的数据进行存取和持久化操作。应用获取某个轻量级存储对象后,该存储对象中的数据将会被缓存在内存中,以便应用获得更快的数据存取速度。应用也可以将缓存的数据再次写回文本文件中进行持久化存储,由于文件读写将产生不可避免的系统资源开销,建议应用减少对持久化文件的读写频率。
|
8月前
|
SQL 存储 关系型数据库
HarmonyOS学习路之开发篇—数据管理(关系型数据库)
关系型数据库(Relational Database,RDB)是一种基于关系模型来管理数据的数据库。HarmonyOS关系型数据库基于SQLite组件提供了一套完整的对本地数据库进行管理的机制,对外提供了一系列的增、删、改、查等接口,也可以直接运行用户输入的SQL语句来满足复杂的场景需要。HarmonyOS提供的关系型数据库功能更加完善,查询效率更加高效。
|
29天前
|
监控 安全 数据管理
现代化后端开发:微服务架构下的数据管理与安全挑战
随着信息技术的不断发展,现代化后端开发正日益注重微服务架构下的数据管理与安全挑战。本文将探讨微服务架构在后端开发中的应用,重点关注数据管理和安全方面的挑战,并提供相应的解决方案。
|
3月前
|
前端开发 Java 数据管理
javaWeb基于SSM框架开发的社区医疗数据管理系统【项目源码+数据库脚本+报告】
javaWeb基于SSM框架开发的社区医疗数据管理系统【项目源码+数据库脚本+报告】
|
8月前
|
存储 数据管理 API
HarmonyOS学习路之开发篇—数据管理(数据存储管理)
数据存储管理指导开发者基于HarmonyOS进行存储设备(包含本地存储、SD卡、U盘等)的数据存储管理能力的开发,包括获取存储设备列表,获取存储设备视图等。
|
8月前
|
存储 自然语言处理 搜索推荐
HarmonyOS学习路之开发篇—数据管理(融合搜索)
HarmonyOS融合搜索为开发者提供搜索引擎级的全文搜索能力,可支持应用内搜索和系统全局搜索,为用户提供更加准确、高效的搜索体验。
|
8月前
|
存储 缓存 Java
HarmonyOS学习路之开发篇—数据管理(分布式文件服务)
分布式文件服务能够为用户设备中的应用程序提供多设备之间的文件共享能力,支持相同帐号下同一应用文件的跨设备访问,应用程序可以不感知文件所在的存储设备,能够在多个设备之间无缝获取文件。
|
8月前
|
SQL 关系型数据库 Java
HarmonyOS学习路之开发篇—数据管理(对象关系映射数据库)
HarmonyOS对象关系映射(Object Relational Mapping,ORM)数据库是一款基于SQLite的数据库框架,屏蔽了底层SQLite数据库的SQL操作,针对实体和关系提供了增删改查等一系列的面向对象接口。应用开发者不必再去编写复杂的SQL语句, 以操作对象的形式来操作数据库,提升效率的同时也能聚焦于业务开发。
|
9月前
|
前端开发 JavaScript 数据管理
百度地图开发:自定义区划管理php后台数据管理的解决方案(layUI前端)
百度地图开发:自定义区划管理php后台数据管理的解决方案(layUI前端)
84 0