private static bool HandleEndInvoke(IAsyncResult result)
            {
                bool flag;

                ControlOperationInvoker.ServiceOperationAsyncResult asyncState = (ControlOperationInvoker.ServiceOperationAsyncResult)result.AsyncState;
                TransactionScope scope = Fx.CreateTransactionScope(asyncState.currentTransaction);

                try
                {
                    using (new OperationContextScopeHelper(asyncState.operationContext))
                    {
                        asyncState.returnValue = asyncState.innerInvoker.InvokeEnd(asyncState.durableInstance, out asyncState.outputs, result);
                        flag = true;
                    }
                }
                finally
                {
                    Fx.CompleteTransactionScope(ref scope);
                }
                return(flag);
            }
 public static object End(out object[] outputs, IAsyncResult result)
 {
     ControlOperationInvoker.ServiceOperationAsyncResult result2 = AsyncResult.End <ControlOperationInvoker.ServiceOperationAsyncResult>(result);
     outputs = result2.outputs;
     return(result2.returnValue);
 }