System.Runtime.Serialization.XPathQueryGenerator.ProcessClassDataContract C# (CSharp) Method

ProcessClassDataContract() static private method

static private ProcessClassDataContract ( ClassDataContract contract, ExportContext context, MemberInfo memberNode ) : System.Runtime.Serialization.DataContract
contract ClassDataContract
context ExportContext
memberNode System.Reflection.MemberInfo
return System.Runtime.Serialization.DataContract
        static DataContract ProcessClassDataContract(ClassDataContract contract, ExportContext context, MemberInfo memberNode)
        {
            string prefix = context.SetNamespace(contract.Namespace.Value);
            foreach (DataMember member in GetDataMembers(contract))
            {
                if (member.MemberInfo.Name == memberNode.Name && member.MemberInfo.DeclaringType.IsAssignableFrom(memberNode.DeclaringType))
                {
                    context.WriteChildToContext(member, prefix);
                    return member.MemberTypeContract;
                }
            }
            throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(XmlObjectSerializer.CreateSerializationException(SR.Format(SR.QueryGeneratorPathToMemberNotFound)));
        }