是设计模式吗?链

Med*_*tor 3 c# design-patterns

如何调用该类\结构?也许是设计模式?

任务:
我有一个我需要搜索项目的集合.
我有3个级别的搜索.
我创建一个Matcher链并在每个级别上搜索集合,如果找不到则将集合传递到下一级别.

我正在寻找什么是设计模式.

class Matcher
{
    private readonly Matcher _nextMatcher;
    private readonly Func<lambda, bool> _predicate;

    public Matcher(
        Matcher nextMatcher,
        Func<lambda, bool> predicate)
    {
        _nextMatcher = nextMatcher;
        _predicate = predicate;
    }

    public bool Match(Collection<SomeObject> someObjects,
        IEnumerable<SomeObject> sourceObjects)
    {
        if (!_predicate(someObjects, sourceObjects))
        {
            if (_nextMatcher == null)
                return false;

            return _nextMatcher.Match(someObjects, sourceObjects);
        }

        return true;
    }
}
Run Code Online (Sandbox Code Playgroud)

Iga*_*nik 7

从它的外观来看,这看起来像是(正确的)责任链设计模式的实现.

这是另一个更以.NET为中心的例子:http://www.dofactory.com/Patterns/PatternChain.aspx