EventPublication and EventSubscription failing to connect
I'm having trouble getting EventPublication and EventSubscription to work. Things compile but the event goes nowhere, In the sample code below, EventHandler DoTrace is not being loaded by the system and so it is always a null object which makes it somewhat difficult for the event handler code to use it to publish the event to the subscribers. Here's the essentials of the sample application which is simply sending a string to be passed to the Debug.WriteLine function. I've typed this in from memory so there could be a typo or two in there but the basic logic should be correct. The original program was created using the new project -> WPF window application wizard. The event publication/subscription was added manually. using System.Diagnostics; using System; namespace LoggingExperiemnt public WIndow1() public void CallTrace( object sender, string msg ) The code compiles and runs butDoTrace is always null, indicating that the system never decided that it was necessary to establish the publish/subscriber relationship. What am I missing?
using Microsoft.Practices.CompositUI.EventBroker;
using Microsoft.Practices.CompositUI.Utility;
namespace LoggingExperiment
{
public class Logger
{
[EventSubscription( "TopicTrace", ThreadOption.Publisher )]
public void DoTrace( object sender, DataEventArgs<string> e)
{
Debug.WriteLine( e.Data );
}
}
}
using Microsoft.Practices.EnterpriseLibrary.Logging;
using Microsoft.Practices.CompositeUI.EventBroker;
using Microsoft.Practices.CompositeUI.Utility;
{
public partial class Window1 : System.Windows.Window
{
[EventPublication("TopicTrace", PublicationScope.Global)]
public event EventHandler<DataEventArgs<string>> DoTrace;
{
CallTrace(this, "Calling InitializeComponent");
InitializeComponent();
}
{
if (DoTrace != null)
{
DoTrace( sender, new DataEventArgs<string>( msg ) );
}
}
}

