Hi, I am wondering how to people typically approach validating the command/model before execution?
I know that Akka.net does provide a boolean function (on the Receive, Command, etc) to determine whether or not to execute the command. But I have also read that model validation is something that cannot really be guaranteed (so we need expect that there will be issues).
Some of these business rules could be simple (e.g. just check for the existence of something), or could be quite involved.
As I understand it, there are 3 possible ways of doing this sort of thing:
a. using the boolean function to determine if the command can be processed
b. Accepting the command, and putting the actor into a state while it goes away to figure out if it can do something (either by using a blocking Ask, or by having a non blocking conversation with other actors)
c. Performing and validation prior to initiating the command (e.g. pipelining the request, or doing it in a supervisor)
Appreciate any thoughts on this.