public static void Main()
var withMethodObj = new WithMethod();
withMethodObj.DoYourThing("Derek");
var withLambdaObj = new WithLambda();
withLambdaObj.DoYourThing("Ian");
public void DoYourThing(string name)
var eventObj = new EventClass();
eventObj._theEvent += AMethod;
public void AMethod(object sender)
Console.WriteLine("Hello, {0}", _name);
public void DoYourThing(string name)
var eventObj = new EventClass();
eventObj._theEvent += (object sender) =>
Console.WriteLine("Hello, {0}", name);
public delegate void MyEvent(object sender);
public event MyEvent _theEvent;