// Define a method with the signature required to be able to subscribe to the event // defined in the Connection class. Since the subscriber method is in a different // class, it has to be public. public void DisplayMessage(object source, MessageArrivedEventArgs e) { // The source object needs to be cast to access its custom properties, but since // we are using a specific arguments class, we can access the message directly. WriteLine($"Message arrived from: {((Connection)source).Name}"); WriteLine($"Message text: {e.Message}"); }
public void DisplayMessage(object source, MessageArrivedEventArgs e) { Console.WriteLine($"Message arrived from {((Connection)source).Name}"); Console.WriteLine($"Message Text: {e.Message}"); }
public void DisplayMessage(object source, MessageArrivedEventArgs e) { Console.WriteLine("Message arrived from: {0}", ((Connection)source).Name); Console.WriteLine("Message Text: {0}", e.Message); }
public void DisplayMessage(object source, MessageArrivedEventArgs e) { WriteLine($"Message arrived from: {(source as Connection)?.Name}"); WriteLine($"Message arrived: {e.Message}"); }
public void DisplayMessage(object source, MessageArrivedEventArgs e) // This is an Anonymous method, page 375 // variables created in anonymous methods may require a non-default deconstructor due to how long they can hang around as an OUTER VARIABLE. { WriteLine($"Message arrived from: {((Connection)source).Name}"); WriteLine($"Message Text: {e.Message}"); }