首页 > 代码库 > DesignPattern_Behavioral_ChainOfResponsibility

DesignPattern_Behavioral_ChainOfResponsibility

using System;namespace DesignPattern.Behavioral.ChainOfResponsibility{    public class Target    {        public object State { get; set; }        public void Show(Chain chain)        {            chain.Show(this);        }    }    public abstract class Chain    {        public abstract void Show(Target target);    }    public class ChainA : Chain    {        public override void Show(Target target)        {            if (target.State is string)            {            }            else            {                new ChainB().Show(target);            }        }    }    public class ChainB : Chain    {        public override void Show(Target target)        {            if (target.State is int)            {            }            else            {                new ChainC().Show(target);            }        }    }    public class ChainC : Chain    {        public override void Show(Target target)        {            if (target.State is bool)            {            }            else            {                throw new Exception();            }        }    }}

 

DesignPattern_Behavioral_ChainOfResponsibility