stateless 우리의 응용 프로그램에서 상태 머신의 논리를 구현하는 데 사용하고 있습니다. AcceptedFile
상태가 있습니다. 다른 내부 (하위) states.The 문제는 어떻게 내 초기 상태를 나타내는 해야할지 모르겠다 그래서상태 비 저장 : 상태의 초기 상태를 정의하는 방법은 무엇입니까?
machine.Configure(State.AcceptedFile)
.OnEntry(() => machine.Fire(Trigger.MakeReadyForAdvertising))
.Permit(Trigger.MakeReadyForAdvertising,State.ReadyForAdvertising)
여기
ReadyForAdvertising
입니다 AcceptedFile
.This의 내부 상태는 대부분의 잘 작동 : AccptedFile
상태로 기계 운송 그것은 또한 내가이 동작을 시뮬레이션하기 위해 무엇을했는지 초기 내부 state.Here의 자동 전송을 할 때 시나리오지만 내 상태 기계의 초기 상태를 AcceptedFile
으로 설정할 때마다 :
var statemachine=new StateMachine<State,Trigger>(State.AcceptedFile)
...
자동 전환이 일어나지 않으므로 컴퓨터가 ReadyForAdvertising
대신 AcceptedFile 상태가됩니다.
이 동작을 구현하는 더 좋은 방법이 있습니까?
초기 상태가되는 유일한 목적으로 더미 상태를 만든 다음 즉시 트리거를 실행하여 올바른 상태로 이동시킵니다. –
내가 그 일을하고있는 방법이라고 생각해. 감사합니다. – Beatles1692
@ LasseV.Karlsen 그게 작동한다면, 왜 OP가 그것을 받아 들일 수 있습니까? 건배 – superjos