.NET MVVM 框架 Prism 中的核心组件之一:事件聚合器(EventAggregator)的底层实现部分
2026/8/27 13:29:02 网站建设 项目流程

.NET MVVM 框架Prism中的核心组件之一:事件聚合器(EventAggregator)的底层实现部分。它主要用于实现组件、模块之间的松耦合通信(即发布-订阅模式)。

下面我为你逐个类、逐个方法地详细拆解这段代码的设计机制和核心逻辑。


一、 整体设计模式:Pub-Sub (发布-订阅)

传统的 C# 事件(event)强依赖于发布者和订阅者生命周期的绑定,容易导致内存泄漏(如果订阅者忘记取消订阅,发布者会一直持有其引用使其无法被垃圾回收)。

Prism 的这套设计通过引入IDelegateReference(通常底层实现为弱引用 WeakReference),确保了即使订阅者没有显式显式调用Unsubscribe,也能被正常垃圾回收。


二、 核心类详解

1.EventBase(事件基类)

它是所有具体事件的抽象基类,负责维护订阅者列表、提供线程安全的订阅/取消订阅操作,并处理事件的分发。

  • **成员变量_subscriptions**:存储所有订阅者的列表(实现IEventSubscription接口)。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询