System.Runtime.Serialization.SerializationInfoEnumerator.MoveNext C# (CSharp) Method

MoveNext() public method

public MoveNext ( ) : bool
return bool
        public bool MoveNext() {
            if (m_currItem<m_numItems) {
                m_currItem++;
                m_current = true;
            } else {
                m_current = false;
            }
            return m_current;
        }

Usage Example

        internal void WriteSerializationInfo(XmlWriterDelegator xmlWriter, Type objType, SerializationInfo serInfo)
        {
            if (DataContract.GetClrTypeFullName(objType) != serInfo.FullTypeName)
            {
                if (base.DataContractResolver != null)
                {
                    XmlDictionaryString str;
                    XmlDictionaryString str2;
                    if (this.ResolveType(serInfo.ObjectType, objType, out str, out str2))
                    {
                        xmlWriter.WriteAttributeQualifiedName("z", DictionaryGlobals.ISerializableFactoryTypeLocalName, DictionaryGlobals.SerializationNamespace, str, str2);
                    }
                }
                else
                {
                    string str3;
                    string str4;
                    DataContract.GetDefaultStableName(serInfo.FullTypeName, out str3, out str4);
                    xmlWriter.WriteAttributeQualifiedName("z", DictionaryGlobals.ISerializableFactoryTypeLocalName, DictionaryGlobals.SerializationNamespace, DataContract.GetClrTypeString(str3), DataContract.GetClrTypeString(str4));
                }
            }
            this.WriteClrTypeInfo(xmlWriter, objType, serInfo);
            base.IncrementItemCount(serInfo.MemberCount);
            SerializationInfoEnumerator enumerator = serInfo.GetEnumerator();

            while (enumerator.MoveNext())
            {
                SerializationEntry  current       = enumerator.Current;
                XmlDictionaryString clrTypeString = DataContract.GetClrTypeString(DataContract.EncodeLocalName(current.Name));
                xmlWriter.WriteStartElement(clrTypeString, DictionaryGlobals.EmptyString);
                object obj2 = current.Value;
                if (obj2 == null)
                {
                    this.WriteNull(xmlWriter);
                }
                else
                {
                    this.InternalSerializeReference(xmlWriter, obj2, false, false, -1, Globals.TypeOfObject.TypeHandle);
                }
                xmlWriter.WriteEndElement();
            }
        }