.Net Core 观察者模式

观察者模式的定义

一个目标物件管理所有相依于它的观察者物件, 并且在它本身的状态改变时主动发出通知

.Net Core实现观察者模式的代码
Person.cs
1
2
3
4
5
6
7
8
9
10
11
12
13
using System;
namespace ObserverPattern
{
public class Person
{
public event EventHandle<FallsIllEventArgs> FallsIll;

public void OnFallsIll()
{
FallsIll?.Invoke(this, new FallsIllEventArgs("China Beijing"));
}
}
}
FallsIllEventArgs.cs
1
2
3
4
5
6
7
8
9
10
using System;
namespace ObserverPattern
{
public readonly string Address;

public FallsIllEventArgs(string address)
{
this.Address = address;
}
}
Program.cs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
using System;
namespace ObserverPattern
{
class Program
{
static void Main(string[] args)
{
var person = new Person();
person.FallsIll += OnFallsIll;
person.OnFallsIll();
person.FallsIll -= OnFallsIll;
}

private static void OnFallsIll(object sender, FallsIllEventArgs eventArgs)
{
Console.WriteLine($'A doctor has been called to(eventArgs.Address)');
}
}
}

.Net Core 观察者模式
http://blog.chcaty.cn/2018/04/05/net-core-guan-cha-zhe-mo-shi/
作者
caty
发布于
2018年4月5日
许可协议