Putting Prism-v2 extensibility to test. The standalone Silverlight Event Aggregator

This is a post I have had pending for a long time. As usual it came up after I saw this question in the Composite WPF & Silverlight forums at Codeplex.

The user wanted a lightweight download, and was only using the Event Aggregator from the CAL's latest bits. I thought that this would really test Prism's extensibility, so I created a single assembly which only contained things required by the Silverlight Event Aggregator.

UPDATE: This assembly also works when using Silverlight 3 Beta version.

The following picture will easen the process of explaining/understanding all the classes this assembly requires. It was taken using the .Net Reflector. (Clicking it will probably make it easier to read)

Afterwards I tested the correct functionality of this assembly using the EventAggregator Quickstart by replacing the events used in it with events from this new assembly.Everything worked like a charm, so Prism-v2 passed this "extensibility test" :)

Glenn Block has a post that explains how to perform Event Aggregation with MEF (with and without EventAggregator), so perhaps you could find that post interesting if you have read this far.

You can check out other posts in this series:

Standalone Silverlight Event Aggregator Binaries

Disclaimer

This assembly is provided "AS IS" with no warranties, and confers no rights.

Download

You can get the assembly here: Composite.EventAggregator.Silverlight.