/// <summary> /// Register needed services and options for the Application Workflow Engine /// </summary> /// <param name="service"></param> /// <param name="workflowOptionsDelegate">Optional parameter</param> public static void AddApplicationWorkflowEngine( this IServiceCollection service, Action<ApplicationWorkflowEngineOptions> workflowOptionsDelegate = null) { // required by DI if (workflowOptionsDelegate != null) { service.Configure(workflowOptionsDelegate); } else { service.AddOptions<ApplicationWorkflowEngineOptions>() .Configure( workflowOptions => workflowOptions.XmlWorkflowConfigurationProviderOptions = new XmlWorkflowConfigurationProviderOptions { // folder placed on project level XmlWorkflowConfigurationFullPathToFile = "../../../../ApplicationWorkflowConfigurations/ApplicationWorkflowConfiguration.xml" }); } service.RegisterApplicationWorkflowEngineServices(); }