C#的基于.net framework的Dll模块编程(四) - 编程手把手系列文章

net,framework,dll · 浏览次数 : 0

小编点评

**命名空间的起名** 在C#中,命名空间的起名通常由公司名(或个人名称)、产品名和分类名组成。例如,我这里的命名空间是:Lzhdim.LPF.Helper,其中: - Lzhdim 是公司名称 - LPF 是平台名称 - Helper 是分类名称 **静态类** 静态类提供一些封装的函数,以提供给读者访问。它们通常以静态方法定义,并可以在类定义中直接访问。 **动态类** 动态类是类定义的模板,用于创建对象的模板。它们通常直接定义属性,而类中的其他成员通常定义在静态类中。 **窗体** 窗体是用于显示图形的类。它们可以在类库中定义,并在其他库或应用程序中进行调用。

正文

       这次继续这个系列的介绍:

 

  一、命名空间的起名;

  对于C#来说,一般命名空间的建议是:公司名(或个人名称).产品名.分类名,比如我这边是用的这个:Lzhdim.LPF.Helper,意思是个人名Lzhdim,加上LPF为平台名,加上Helper分类为帮助类,其它的更长的请读者自己添加。

   

 

  二、Dll库里的内容;

  下面介绍Dll库里的代码内容:

  1. 静态类;一些函数方法

  最常见的库里的内容就是静态类了,这些类提供了一些读者封装的函数,主要以提供函数为主。使用方法也很简单,先声明命名空间,然后直接输入静态类名,用点号,然后就会显示该静态里里的函数了。

   

  比如这里新建了一个Helper库,然后添加分类目录StaticDll,然后新建一个类,命名为StaticDllHelper。

   

   

  然后,在静态类里添加代码:

   

       这里新建了一个静态类,命名为StaticDllHelper,还定义了一个静态函数TestDllHelper,注意这里添加了static 声明该函数为静态函数。

 

  1. 动态类;一些对象

  动态类一般为类定义,为对象的模板。笔者这里的建议是,一般动态类直接定义对象,只声明属性,至于该对象的操作,放到静态类里去进行。当然这个是笔者的建议,对于动态类,具有类的特性,一般为封装、继承、多态。下面为一个对象的模板,参考前面新建一个Lzhdim.CharpDll.Module类库,然后添加动态类AppConfigModule:

   

   

 

       这里有个例子:

  1) 引用该Module库;

   

  2) 声明命名空间;

  在顶部using声明该库。

   

  3) 使用该Moudle库;

  在上面的例子里,在静态库里的函数中使用该Moudle并进行操作。

  下面就用New了一个对象,这里能够直接设置该对象里属性的值。

   

 

  1. 窗体;自定义的窗体

  在类库中,还有一种就是类库里定义的窗体。这里也好理解,就是在类库中定义窗体,然后在其它库或应用里进行调用。只需要声明命名空间,然后就能够New一个窗体进行操作了。

   

  注意这里需要引用System.Drawing和System.Windows.Forms这两个库。

   

      

 

       这里调用该窗体。

  1) 只能在EXE应用类里进行调用;

   

   

  2) 需要New一个窗体;

  声明命名空间;New窗体,然后显示。

   

 

与C#的基于.net framework的Dll模块编程(四) - 编程手把手系列文章相似的内容:

C#的基于.net framework的Dll模块编程(四) - 编程手把手系列文章

这次继续这个系列的介绍: 一、命名空间的起名; 对于C#来说,一般命名空间的建议是:公司名(或个人名称).产品名.分类名,比如我这边是用的这个:Lzhdim.LPF.Helper,意思是个人名Lzhdim,加上LPF为平台名,加上Helper分类为帮助类,其它的更长的请读者自己添加。 二、Dll库里

C#的基于.net framework的Dll模块编程(三) - 编程手把手系列文章

继续这个系列的博文: 一、设置DLL类库信息; 在接解决方案资源管理器中选择该Dll程序集项目,鼠标右键,选择属性,打开窗口。 点击“程序集信息”,打开并编辑该Dll程序集的相关信息; 二、代码折叠注释操作; 为了在编辑代码的时候让代码更加美观和专注性,需要将部分代码进行折叠,既做了注释,又能够将该

C#的基于.net framework的Dll模块编程(二) - 编程手把手系列文章

今天继续这个系列博文的编写。接上次的篇幅,这次介绍关于C#的Dll类库的创建的内容。因为是手把手系列,所以对于需要入门的朋友来说还是挺好的,下面开始咯: 一、新建Dll类库; 这里直接创建例子的Dll类库项目,至于项目文件目录的存放布局后面的例子中会介绍。 在解决方案资源管理器上鼠标右键,选择“添加

C# 开发技巧 轻松监控方法执行耗时

前言 MethodTimer.Fody 是一个功能强大的库,可以用于测量 .NET 应用程序中的方法的执行时间。允许你在不修改代码的情况下,自动地测量和记录方法的执行时间。 这个工具是基于.NET的 weaving 技术,通过修改IL(Intermediate Language,中间语言)代码来插入

.NET周刊【5月第2期 2024-05-12】

国内文章 C#在工业数字孪生中的开发路线实践 https://mp.weixin.qq.com/s/b_Pjt2oii0Xa_sZp_9wYWg 这篇文章探讨了C#在工业数字孪生技术中的应用,介绍了三种基于C#的数字孪生系统实现方案: WPF + Unity:结合WPF技术和Unity引擎,实现客户

【Dotnet 工具箱】基于 .NET 6 和 Angular 构建项目任务管理平台

1.Reha 时间管理大师 Rhea 是一个基于 C# 和 .NET 6 开发的在线任务管理平台,类似于 禅道、Jira、Redmine, 滴答清单等。 支持多视图多维度统一管理任务。多级结构,工作区,空间,文件夹,列表,可以更灵活的进行任务管理。 应用支持多主题和主题色切换,灵活搭配,随心所欲。

C#异步有多少种实现方式?

前言 微信群里的一个提问引发的这个问题,有同学问:C#异步有多少种实现方式?想要知道C#异步有多少种实现方式,首先我们要知道.NET提供的执行异步操作的三种模式,然后再去了解C#异步实现的方式。 .NET异步编程模式 .NET 提供了执行异步操作的三种模式: 基于任务的异步模式 (TAP) ,该模式

4款.NET开源的Redis客户端驱动库

前言 今天给大家推荐4款.NET开源免费的Redis客户端驱动库(以下排名不分先后)。 Redis是什么? Redis全称是REmote DIctionary Service,即远程字典服务。Redis 是一个使用C语言编写的、开源的(遵守 BSD 协议)、支持网络、可基于内存亦可持久化的日志型、K

.NET下免费开源的PDF类库(PDFSharp)

前言 目前.NET 体系下常见的PDF类库有Aspose、QuestPDF、Spire、iTextSharp等,有一说一都挺好用的,我个人特别喜欢QuestPDF它基于 C# Fluent API 提供全面的布局引擎;但是这些库要么属于商业库价格不菲(能理解收费),但是年费太贵了。要么是有条件限制开

.NET周报 【4月第2期 2023-04-08】

国内文章 LRU缓存替换策略及C#实现 https://www.cnblogs.com/eventhorizon/p/17290125.html 这篇文章讲述了缓存替换策略,特别是LRU算法。LRU算法基于这样一个假设:如果数据最近被访问过,那么将来被访问的几率也更高。通常我们会用双向链表来实现这个