Winform:坚持最久的技术之一,即将在.NET core 3.0 中获得支持

2024-11-08
来源:网络整理

随着时间的推移,它可以算得上是能够持续时间最长的技术之一。它过去的辉煌和现在的活跃,导致它仍然拥有庞大的用户群体。虽然很多技术日新月异,但以前的ASP、ASP.NET、Asp.NET MVC、WPF等技术已经基本淡出了人们的视线,迎来了.NET Core、UWP等技术应用。 .NET Core也给了.NET重生的重要机会,让其能够更高效地运行在各个平台上,从而刺激了.NET的又一个春天。虽然微软的技术基本上已经被压缩在一定范围内,但由于其用途广泛,微软也不能完全放弃它。据说在即将发布的.NET core 3.0中将会支持它,这确实是一个非常好的改变。

点击获取接口开发工具

技术交流群4:欢迎进群讨论

1、应用场景

我也是开发的粉丝。我这十几年基本上都是在开发各种应用程序(虽然我也做了很多相关的web开发),从最早的小工具、小共享软件之类的,到后来我会开发一些数据管理系统、业务管理系统等等,所以我在这方面有一定的背景,可以对这个技术应用做一个个人的总结。

1、用户体验

在应用中,与其他Web系统相比,其用户体验是最好的,界面响应速度也比Web界面更快。很多时候,用户考虑到使用的方便性,比如一些报表的显示、打印、导入导出文件等常用操作,仍然是使用这个定制的非常好的界面来处理。毕竟大多数情况下,单位都有一套业务和数据管理系统来处理这些业务。

2. 数据敏感性

另外,很多时候,比如一些事业单位、事业单位,他们的数据比较敏感,不愿意向外界透露。网络的引入将提供数据泄露的可能性。另外,他们往往处于内网环境中,因此一个单机版的程序就可以处理他们日常的业务处理。这种特殊的商业环境注定可以通过使用该程序来更好地应对。

3、开发便利性

更容易发布和共享开发的程序。可以直接安装使用,无需部署在云端(虽然我的混合框架方式可以访问Web API、WCF等服务来获取数据并透明处理数据);而且接口开发起来非常方便。与界面套件结合,可以创造出很棒的界面效果。另外,从发展的角度来看,Web前端技术正在很快被淘汰,技术积累处于逐步强化的过程中。因此,对于一些开发者来说,迭代开发的应用程序会更方便、更熟练,所以只要客户在使用,系统是兼容的,这种程序就会一直保留下来。

2. 开发流程

1. 界面开发

开发与其他方法相比有很多优点。主要特点是开发方便。基于一定的框架,可以快速开发出具体的业务管理系统。以下是我的客户关系管理系统的界面效果。主界面采用套件,可以让界面看起来非常统一、美观。另外,对于界面的开发,我们可以根据数据库信息通过工具快速生成常规的列表展示界面和编辑界面,从而进行一定的调整。就是这样。

对于列表界面,常规功能有数据分页展示、查询、高级查询、导入、导出、打印等,这些可以通过定义的界面模板统一生成,生成后可以进行一定的调整(如添加将其添加到左侧的树形列列表中)。

例如,这个编辑界面只能根据数据库信息的生成来调整。我们可以快速修改控件的类型,比如改为列表类型、注释类型等,并且在代码中绑定字典类型就可以显示字典数据。

开发程序难吗_程序开发一般用什么语言_小程序开发是用什么技术

2. 后端代码开发

对于一个新的业务表,我们需要开发底层实现和界面层展示。这个工作量也是非常巨大的。如果是基于控件的细粒度处理,也是非常繁琐的工作。因此,基于这些开发流程的考虑,我们推出了代码生成工具来提高开发效率,专门针对我们的框架基于开发框架来实现代码开发和业务界面展示的快速开发。

代码生成工具不仅可以让它生成我们常用开发的接口层以下的实现代码(包括BLL、DAL、IDAL等层,以及混合框架的WCF和Web API的实现层和调用封装层) ),以及接口层的调用代码。

通过这些处理,我们可以大大减少工作量。

在生成的项目中,我们已经有了相应框架支持的实现层。

通用框架的分层架构图。

3.底层数据库支持

在实际需求中,你往往无法决定客户需要使用什么数据库,因此需要根据实际需求或环境来选择数据库类型。如果是单机版的话,可以方便使用。如果有现有的业务系统或者需要更快的响应速度,那么可以考虑使用or,一些历史原因可能会使用or等。那么框架的灵活性就需要支持多种数据库。这种支持最好不要造成太大的工作量,否则就会不堪重负。

该框架的底层数据库访问是使用微软企业库实现的,因此在处理多种数据库访问时可以提供统一的访问处理操作,同时也很好的支持针对不同数据库的操作。下图展示了框架底层数据库的支持。

使用微软企业库作为我们的底层数据库访问模块后,将统一使用这个企业库的数据库访问对象对多个数据库进行访问操作。操作非常一致。为了对不同的数据库进行例行的增删改查等操作,进一步进行封装,以简化代码,因此我们可以为每个不同的数据库定义一个数据访问操作基类,以实现对不同数据库的一些不同处理数据库,但它们仍然具有通用的数据访问基础类型。

使用不同的数据库,我们需要生成和处理不同数据库的访问层,比如为数据表生成相关的数据访问层,其中包含每个表对象的内容。但由于使用了相关的继承类处理和基于数据库的代码生成,所以需要调整的代码很少。

4. 数据集中的云模型

开发程序难吗_小程序开发是用什么技术_程序开发一般用什么语言

在很多业务系统中,都有很多部署在云服务器上的需求。这种方式可以实现多种数据的管理,也有利于安全。因此,我们集成了WCF和Web API两种服务访问方式,基于开发接口,不需要做太多改动就可以访问。这是我们的混合开发框架。

多种混合框架支持方式

对于WCF或者Web API的封装,我们采用接口适配的方式。调用层需要对业务接口进行封装,从而产生大量的封装代码。因此可以利用代码生成工具来生成业务模块对应的接口适配代码,可以大大减少这部分开发效率的损失。

混合框架的架构如下所示。

代码生成工具生成如下图所示的综合混合框架项目,只不过没有如下图所示的界面部分。在实际开发过程中,这部分可以和我的混合框架案例结合起来,也可以在现场使用。界面的开发使得整体非常容易操作:

调用Web API的流程可以通过下图来说明。

5、模块化框架结构

在开发应用的时候,除了简化代码之外,我们其实并不想重新开发很多常规的业务,比如权限管理系统、字典管理、附件管理等等,这些都是很多业务都会涉及到的模块。我们应该以一定的粒度整合现有的模块,这样可以降低我们的开发难度,减少开发时间。我们可以把重要的时间花在特定的业务领域,快速响应客户需求的发展。

混合框架可以看作是该框架的进阶版本。除了本身是一个完整的业务系统之外,它的所有外围辅助模块(比如通用权限、通用词典、通用附件管理、通用人员管理……)都实现了这个混合框架,所以使用起来非常方便。如果整个框架简化的话,在原来的接口层上使用接口调用方法,避免与业务逻辑类的紧耦合。

界面控制|下载试用

凭借 180 多个组件和 UI 库,它可以为平台创建有影响力的业务解决方案。它可以完美构建流畅、美观、易用的应用程序,无论是时尚的界面还是分析处理大量的业务数据,它都能轻松胜任!

分享