diff --git a/src/MongoDB.Bson/Serialization/Serializers/BsonClassMapSerializer.cs b/src/MongoDB.Bson/Serialization/Serializers/BsonClassMapSerializer.cs index bec64ba12af..bea654e2b84 100644 --- a/src/MongoDB.Bson/Serialization/Serializers/BsonClassMapSerializer.cs +++ b/src/MongoDB.Bson/Serialization/Serializers/BsonClassMapSerializer.cs @@ -344,8 +344,9 @@ public bool GetDocumentId( /// public bool TryGetMemberSerializationInfo(string memberName, out BsonSerializationInfo serializationInfo) { - foreach (var memberMap in _classMap.AllMemberMaps) + for (var i = 0; i < _classMap.AllMemberMaps.Count; i++) { + var memberMap = _classMap.AllMemberMaps[i]; if (memberMap.MemberName == memberName) { var elementName = memberMap.ElementName; @@ -584,8 +585,9 @@ private void SerializeClass(BsonSerializationContext context, BsonSerializationA SerializeDiscriminator(context, args.NominalType, document); } - foreach (var memberMap in _classMap.AllMemberMaps) + for (var i = 0; i < _classMap.AllMemberMaps.Count; i++) { + var memberMap = _classMap.AllMemberMaps[i]; if (memberMap != idMemberMap || !args.SerializeIdFirst) { SerializeMember(context, document, memberMap);