public Task<IEntityAction> OperationAsync (IEntityAction entityAction) { var task = Task.Factory.StartNew (() => { if (entityAction.NotNull ()) { IModelContext context = Request (entityAction.ConnectionString); if (context.NotNull ()) { try { if (ContainsOperation (entityAction)) { Invoke (context, entityAction); } else { // operation not found! string msg = $"context: {entityAction.Operation.CategoryType.Category} - operation: {entityAction.Operation.Operation} - NOT FOUND!"; entityAction.Result.CopyFrom (new rr.Library.Helper.TValidationResult (msg)); } } catch (Exception exception) { THelper.FormatException ("Operation", exception, entityAction); } } context.DisposeNow (); } return (entityAction); }, CancellationToken.None, TaskCreationOptions.None, TaskScheduler.Default ); return (task); }