private static bool HandleEndEnlist(IAsyncResult result) { PersistenceContext.ReleaseAsyncResult asyncState = (PersistenceContext.ReleaseAsyncResult)result.AsyncState; asyncState.persistenceContext.EndEnlist(result); if (!asyncState.persistenceContext.ScheduleDetach()) { asyncState.persistenceContext.directory.RemoveInstance(asyncState.persistenceContext); } foreach (InstanceKey key in asyncState.persistenceContext.keysToAssociate) { asyncState.persistenceContext.AssociatedKeys.Remove(key); } asyncState.persistenceContext.keysToAssociate.Clear(); asyncState.persistenceContext.keysToDisassociate.Clear(); return(true); }
private static bool HandleEndExecute(IAsyncResult result) { PersistenceContext.ReleaseAsyncResult asyncState = (PersistenceContext.ReleaseAsyncResult)result.AsyncState; asyncState.persistenceContext.store.EndExecute(result); return(asyncState.AfterUnlock()); }