System.Runtime.Serialization.Formatters.Soap.Attr.ProcessMemberInfoAttribute C# (CSharp) Method

ProcessMemberInfoAttribute() static private method

static private ProcessMemberInfoAttribute ( MemberInfo memberInfo, SoapAttributeInfo attributeInfo ) : void
memberInfo System.Reflection.MemberInfo
attributeInfo SoapAttributeInfo
return void
        internal static void ProcessMemberInfoAttribute(MemberInfo memberInfo, SoapAttributeInfo attributeInfo)
        {
            SoapAttribute attr = (SoapAttribute)
                                 InternalRemotingServices.GetCachedSoapAttribute(memberInfo);

            if (attr.Embedded)
                attributeInfo.m_attributeType |= SoapAttributeType.Embedded;

            // check for attribute and other junk
            if (attr is SoapFieldAttribute)
            {
                SoapFieldAttribute fieldAttr = (SoapFieldAttribute)attr;
                if (fieldAttr.UseAttribute)
                {
                    attributeInfo.m_attributeType |= SoapAttributeType.XmlAttribute;
                    attributeInfo.m_elementName = fieldAttr.XmlElementName;
                    attributeInfo.m_nameSpace = fieldAttr.XmlNamespace;
                }
                else
                {
                    if (fieldAttr.IsInteropXmlElement())
                    {
                        attributeInfo.m_attributeType |= SoapAttributeType.XmlElement;
                        attributeInfo.m_elementName = fieldAttr.XmlElementName;
                        attributeInfo.m_nameSpace = fieldAttr.XmlNamespace;
                    }
                }
            }
        } // ProcessMemberInfoAttribute