< 返回技术文档列表

Winform框架中怎么管理字典数据

发布时间:2021-09-01 01:23:12⊙投诉举报

Winform框架中怎么管理字典数据,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。

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

Winform框架中怎么管理字典数据

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

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

Winform框架中怎么管理字典数据

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

Winform框架中怎么管理字典数据

配置文件如下所示

<?xml version="1.0" encoding="utf-8" ?> <configuration> <configSections> <section name="dataConfiguration" type="Microsoft.Practices.EnterpriseLibrary.Data.Configuration.DatabaseSettings, Microsoft.Practices.EnterpriseLibrary.Data"/>type="Microsoft.Practices.EnterpriseLibrary.Data.Configuration.DatabaseSettings, Microsoft.Practices.EnterpriseLibrary.Data"/>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:我的应用程序数据字典SqlDictionaryWHC.Dictionary.UIinDebugOrderWater.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"/>connectionString="Persist Security Info=False;Data Source=(local);Initial Catalog=Warehouse;User ID=sa;Password=123456"/>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来切换不同的数据库,不用修改代码实现多数据库支持,当然,不同的数据库,需要创建不同的数据库文件,不过数据库结构基本上是一致的。

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

Winform框架中怎么管理字典数据

字典数据模块做成独立的程序后,一个可以独立运行,也可以在宿主程序中通过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("部门"));  }

关于Winform框架中怎么管理字典数据问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注血鸟云行业资讯频道了解更多相关知识。


/template/Home/Zkeys/PC/Static