C#:在单个语句中将对象中的所有事件连接起来

在我的域层中,所有域对象都会发出事件(类型为InvalidDomainObjectEventHandler),以指示调用IsValid属性时的无效状态.

在aspx代码隐藏中,我必须手动连接域对象的事件,如下所示:

_purchaseOrder.AmountIsNull += new DomainObject.InvalidDomainObjectEventHandler(HandleDomainObjectEvent);
_purchaseOrder.NoReason += new DomainObject.InvalidDomainObjectEventHandler(HandleDomainObjectEvent);
_purchaseOrder.NoSupplier += new DomainObject.InvalidDomainObjectEventHandler(HandleDomainObjectEvent);
_purchaseOrder.BothNewAndExistingSupplier += new DomainObject.InvalidDomainObjectEventHandler(HandleDomainObjectEvent);

请注意,在每种情况下都会调用相同的方法,因为InvalidDomainobjectEventArgs类包含要显示的消息.

有没有什么办法可以编写一个语句来连接所有类型为InvalidDomainObjectEventHandler的事件?

谢谢

大卫

解决方法

我不认为你可以在一个声明中做到这一点..但你可以使代码更容易读取如下:
_purchaseOrder.AmountIsNull += HandleDomainObjectEvent;
_purchaseOrder.NoReason += HandleDomainObjectEvent;
_purchaseOrder.NoSupplier += HandleDomainObjectEvent;
_purchaseOrder.BothNewAndExistingSupplier += HandleDomainObjectEvent;

除此之外 – 似乎答案是否定的:(

相关文章

目录简介使用JS互操作使用ClipLazor库创建项目使用方法简单测...
目录简介快速入门安装 NuGet 包实体类User数据库类DbFactory...
本文实现一个简单的配置类,原理比较简单,适用于一些小型项...
C#中Description特性主要用于枚举和属性,方法比较简单,记录...
[TOC] # 原理简介 本文参考[C#/WPF/WinForm/程序实现软件开机...
目录简介获取 HTML 文档解析 HTML 文档测试补充:使用 CSS 选...