37
1
using System;
2
3
public class Program
4
{
5
public static void Main()
6
{
7
ProcessBusinessLogic bl = new ProcessBusinessLogic();
8
bl.ProcessCompleted += bl_ProcessCompleted; // register with an event
9
bl.StartProcess();
10
}
11
12
// event handler
13
public static void bl_ProcessCompleted()
14
{
15
Console.WriteLine("Process Completed!");
16
}
17
}
18
19
public delegate void Notify(); // delegate
20
21
public class ProcessBusinessLogic
22
{
23
public event Notify ProcessCompleted; // event
24
25
public void StartProcess()
26
{
27
Console.WriteLine("Process Started!");
28
// some code here..
29
OnProcessCompleted();
30
}
31
32
33
protected virtual void OnProcessCompleted()
34
{
35
ProcessCompleted?.Invoke();
36
}
37
}
Cached Result
Process Started!
Process Completed!
Process Completed!