private bool DeserializePolymorphicElement(string elementName, XmlReader reader)
        {
            string elementTypeName = reader.GetAttribute("elementType");

            if (!string.IsNullOrEmpty(elementTypeName))
            {
                Type elementType = Type.GetType(elementTypeName);
                InjectionParameterValueElement element =
                    (InjectionParameterValueElement)Activator.CreateInstance(elementType);
                element.DeserializeElement(reader);
                valueElement = element;
                return(true);
            }

            return(base.OnDeserializeUnrecognizedElement(elementName, reader));
        }
        private static bool DeserializePolymorphicElement(
            XmlReader reader,
            out InjectionParameterValueElement valueElement)
        {
            string elementTypeName = reader.GetAttribute("elementType");

            if (!string.IsNullOrEmpty(elementTypeName))
            {
                Type elementType = Type.GetType(elementTypeName);
                InjectionParameterValueElement element =
                    (InjectionParameterValueElement)Activator.CreateInstance(elementType);
                element.DeserializeElement(reader);
                valueElement = element;
                return(true);
            }

            valueElement = null;
            return(false);
        }