public EnumField(XmlTextReader r, string version) : this() { string enumTypeName; string enumTypeNameSpace; if (r.Name != "EnumField") { throw (new Exception(string.Format("Cannot load, expected EnumField, found '{0}'.", r.Name))); } r.MoveToAttribute("Name"); this.Name = r.Value; r.MoveToAttribute("CustomPrivateName"); //this.customPrivateName = r.Value; CustomPrivateName = string.Empty; r.MoveToAttribute("CustomColumnName"); //this.customColumnName = r.Value; CustomColumnName = string.Empty; r.MoveToContent(); r.Read(); enumTypeName = r.ReadElementString("EnumTypeName"); if (r.LocalName == "Builder") { EnumTypeBuilder.Builders.TryGetValue(r.ReadElementString("Builder"), out builder); } enumTypeNameSpace = r.ReadElementString("EnumTypeNameSpace"); if (r.Name == "Caption") { Caption = r.ReadElementString("Caption"); } if (r.Name == "Description") { Description = r.ReadElementString("Description"); } if (r.Name == "Extensions") { if (!r.IsEmptyElement) { r.Read(); while (r.Name == "Extension") { EnumFieldExtension newExtension = (EnumFieldExtension) ObjectExtension.Build(r, version); extensions.Add(newExtension.GetType(), newExtension); } r.ReadEndElement(); } else { r.Read(); } } r.ReadEndElement(); enumType = new EnumType(enumTypeName, enumTypeNameSpace); }