【.Net】使用委托实现被引用的项目向上级项目的消息传递事件

本文档通过一个教程介绍了如何利用委托和事件在.NET 6控制台项目中实现在类库项目之间的消息传递。首先创建一个类库项目,定义一个带有参数的委托类型和相关事件。然后在控制台项目中引用这个类库,定义事件处理方法,并实例化测试对象。最终,通过触发事件实现了从被引用项目向控制台项目传递消息的功能。这是一个基础的委托和事件使用示例,适合初学者了解和实践。
摘要由CSDN通过智能技术生成

前言:在实际项目过程中,经常可能遇到被引用的项目要向上传递消息,但是又不能通过方法进行返回等操作,这个时候委托就派上用场了。以下使用委托,来实现被引用的项目向上传递消息的小教程,欢迎各位大佬提供建议。

1、新增控制台项目(一般在CS架构中会用的比较多,用于跨线程传递消息使用)。此处用一个控制台项目来模拟演示使用委托进行消息事件的传递教程。

 

2、新增了一个.net 6控制台项目,然后先放一边,后面使用。

 

3、在解决方案下面新增一个类库项目。

 

4、项目名称,此处叫DelegateTestLibrary

 

5、在新建的项目里面,新增一个测试类TestService,并在类上面定义一个带有两个string参数的公开的委托TestDelegate(string par1,string par2);

参数类型可以自由定义,用于传递消息使用。

 

6、然后在类里面新增一个事件,事件类型为委托名称。并且定义一个方法,叫DoDelegateHandle,可以做个简单处理,然后用于给事件传递消息使用。参数可以自定义。或者确保OnTest事件不为null的情况下,也可以省略这一步操作,直接丢数据。

 

7、新增一个测试方法,用来传递消息。传递的消息参数有当前的数值吗,以及时间。

 

8、控制台项目引用刚才的类库项目。

 

9、控制台项目新增一个中间类,用于做测试使用。并且在构造函数内定义事件。

写事件的时候,VS自带快捷键,+=以后,可以按Tab按键,会自动生成一个对应的事件方法,并且参数和委托的参数保持一致。在里面进行修改一些业务就可以了。

 

10、在控制台program文件里面,实例化刚才的测试对象,然后进行测试。

 

11、启动项目,可以看到被引用的项目里面执行消息传送的地方(TestService)所发送的消息,被传到了Realization类里面的事件方法里面去了。

 

12、总结一下:委托和事件在传统的开发过程中很常见,应该很多大佬们都会。如果以前没有玩过委托的大佬们,可以自行尝试玩玩。祝大佬们玩代码愉快~~也欢迎留下宝贵的建议、或点赞或推荐,感谢~~

创作不易,且转且留下出处:https://www.cnblogs.com/weskynet/p/15652569.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值