public IAsyncResult BeginExecute(InstanceHandle handle, InstancePersistenceCommand command, TimeSpan timeout, AsyncCallback callback, object state) { if (command == null) { throw Fx.Exception.ArgumentNull("command"); } if (handle == null) { throw Fx.Exception.ArgumentNull("handle"); } if (!object.ReferenceEquals(this, handle.Store)) { throw Fx.Exception.Argument("handle", SR.ContextNotFromThisStore); } TimeoutHelper.ThrowIfNegativeArgument(timeout); return(InstancePersistenceContext.BeginOuterExecute(handle, command, timeout, callback, state)); }