private INakedObjectAdapter RestoreObject(IOid oid)
        {
            if (oid.IsTransient)
            {
                return(lifecycleManager.RecreateInstance(oid, oid.Spec));
            }

            if (oid is IViewModelOid)
            {
                return(lifecycleManager.GetViewModel(oid));
            }

            return(lifecycleManager.LoadObject(oid, oid.Spec));
        }