public bool TryGetComponent(string componentUri, out IComponent component)
        {
            component = null;
            TcmUri uri = new TcmUri(componentUri);

            Tridion.ContentDelivery.DynamicContent.ComponentPresentationFactory cpFactory = new ContentDelivery.DynamicContent.ComponentPresentationFactory(PublicationId);
            Tridion.ContentDelivery.DynamicContent.ComponentPresentation        cp        = null;
            IList cps = cpFactory.FindAllComponentPresentations(uri.ItemId);

            if (cps.Count > 0 && cps[0] != null)
            {
                cp = (Tridion.ContentDelivery.DynamicContent.ComponentPresentation)cps[0];
            }

            if (cp != null)
            {
                var componentContent = new XmlDocument();
                componentContent.LoadXml(cp.Content);
                var serializer = new XmlSerializer(typeof(Component));
                using (var reader = new XmlNodeReader(componentContent.DocumentElement))
                {
                    component = (IComponent)serializer.Deserialize(reader);
                }
                return(true);
            }

            return(false);
        }
        public bool TryGetComponent(string componentUri, out IComponent component)
        {
            component = null;
            TcmUri uri = new TcmUri(componentUri);
            Tridion.ContentDelivery.DynamicContent.ComponentPresentationFactory cpFactory = new ContentDelivery.DynamicContent.ComponentPresentationFactory(PublicationId);
            Tridion.ContentDelivery.DynamicContent.ComponentPresentation cp = null;
            IList cps = cpFactory.FindAllComponentPresentations(uri.ItemId);

            if (cps.Count > 0 && cps[0] != null)
                cp = (Tridion.ContentDelivery.DynamicContent.ComponentPresentation)cps[0];

            if (cp != null)
            {
                var componentContent = new XmlDocument();
                componentContent.LoadXml(cp.Content);
                var serializer = new XmlSerializer(typeof(Component));
                using (var reader = new XmlNodeReader(componentContent.DocumentElement))
                {
                    component = (IComponent)serializer.Deserialize(reader);
                }
                return true;
            }

            return false;
        }