This framework provides a simple method to allow us to write routines that can be synchronous or asynchronous with no further effort to allow this to happen.
The complexity in creating a routine that is run in a batch process is how to store the various parameters that the routine may require. This was done in the previous version using the RunBaseBatch framework. This older framework stored this data in a loosely typed blob, and required special handling should the developer add or change the parameters. It had other problems, including the fact that the data and process were tightly coupled.
The SysOperation framework provides a new, and simpler way to create processes. It decouples the data (or parameters) from the process by using a data contract. The data contract is a class that is the parameter for the entry point to the class that performs the process. The framework adds further...