PosSharp v1.2.0 API Reference
---
#### [PosSharp\.Core](PosSharp.Core 'PosSharp\.Core')
### [PosSharp\.Core\.Lifecycle](PosSharp.Core.Lifecycle 'PosSharp\.Core\.Lifecycle').[StandardLifecycleHandler](PosSharp.Core.Lifecycle.StandardLifecycleHandler 'PosSharp\.Core\.Lifecycle\.StandardLifecycleHandler')
## StandardLifecycleHandler\.ValidateTransition\(ControlState, ControlState\) Method
Validates whether a transition to a specific state is allowed from the current state\.
```csharp
public void ValidateTransition(PosSharp.Abstractions.ControlState currentState, PosSharp.Abstractions.ControlState targetState);
```
#### Parameters
`currentState` [PosSharp\.Abstractions\.ControlState](https://learn.microsoft.com/en-us/dotnet/api/possharp.abstractions.controlstate 'PosSharp\.Abstractions\.ControlState')
The current logical state\.
`targetState` [PosSharp\.Abstractions\.ControlState](https://learn.microsoft.com/en-us/dotnet/api/possharp.abstractions.controlstate 'PosSharp\.Abstractions\.ControlState')
The target logical state\.
Implements [ValidateTransition\(ControlState, ControlState\)](PosSharp.Core.Lifecycle.IUposLifecycleHandler.ValidateTransition(PosSharp.Abstractions.ControlState,PosSharp.Abstractions.ControlState).md 'PosSharp\.Core\.Lifecycle\.IUposLifecycleHandler\.ValidateTransition\(PosSharp\.Abstractions\.ControlState, PosSharp\.Abstractions\.ControlState\)')
#### Exceptions
[UposStateException](PosSharp.Core.UposStateException 'PosSharp\.Core\.UposStateException')
Thrown if the transition is invalid\.