1

我总是看到 Prism 的 eventaggregator 并且只与 GetEvent 一起使用,这很奇怪。我习惯了旧的 CAB 事件系统 - 现在使用 Marlon Grech 的 Mediator 实现 - 我已经定义了字符串常量,如果它是简单的 int 或值类型,我不必创建额外的类来触发/包装我的数据。

[MediatorMessageSink(MediatorMessages.AddSchoolclass, ParameterType = typeof(int))]
        public void OnSchoolclassAdded(int schoolclassId)
        {
            // do stuff with schoolclassId
        }

我怎样才能对 Prismn 的 eventtaggregator 做同样的事情

4

1 回答 1

0

您可以声明一个事件类以用于所有聚合事件,并传递一个字符串作为其有效负载,但我不会真正推荐这种方法。Prism 开发人员会发现它非常混乱。

事件聚合器使用与旧 CAM 不同的架构。当我进行更改时,我对需要一个事件对象也不满意。但我已经被这种方法所吸引——事件对象基本上是我使用 ReSharper 模板生成的单线。我非常喜欢它的原因是它给了我一个地方来放置我可能需要的任何逻辑来配合事件。

于 2011-03-31T21:10:17.653 回答