조건부 및 중첩 된 조건문을 여러 개 작성하지 않고도 정교한 워크 플로우를 작성할 수있는 곳에 적용 할 수있는 디자인 패턴이 있습니까? 그 대답은 사양 패턴과 같은 것을 사용하는 어딘가에 있을지 모르지만 그 패턴이 어떻게 결합되어 있는지 확실하지 않습니다. 기음#?C# 술어와 작업 대리자를 사용하여 논리적 워크 플로를 작성하는 방법은 무엇입니까?
static void Main()
{
// I have some predicates
bool transientError = true;
bool fatalError = true;
bool maxRetriesReached = true;
// I have some actions
Action SendToDeadletter =() => { };
Action Retry =() => { };
Action Complete =() => { };
// Is there a way of building the following without using conditional statements
// something like Specification Pattern?
// maxRetriesReached || fatalError => SendToDeadletter()
// transientError && !maxRetriesReached => Retry()
// !transientError && !fatalError => Complete()
}
심지어 나는 괜찮 조건문을 사용하도록 예에서 볼 수있는 다음과 같은 방법을 사용하여, 그러나, 당신은 [이] (HTTPS을 볼 수있다. codeproject.com/Articles/670115/Specification-pattern-in-Csharp) – Yahya
[StateMachine] (https://www.hanselman.com/blog/Stateless30AStateMachineLibraryForNETCore.aspx)이 문제를 해결할 수 있습니다. –