Table of Contents

Namespace MongoDB.Bson.Serialization.Serializers

The MongoDB.Bson.Serialization.Serializers namespace contains the serializers for the various BSON and base .Net types

Classes

AbstractClassSerializer<TClass>

Represents a serializer for an abstract class.

ArraySerializer<TItem>

Represents a serializer for one-dimensional arrays.

BitArraySerializer

Represents a serializer for BitArrays.

BooleanSerializer

Represents a serializer for Booleans.

BsonArraySerializer

Represents a serializer for BsonArrays.

BsonBinaryDataSerializer

Represents a serializer for BsonBinaryDatas.

BsonBooleanSerializer

Represents a serializer for BsonBooleans.

BsonDateTimeSerializer

Represents a serializer for BsonDateTimes.

BsonDecimal128Serializer

Represents a serializer for BsonDecimal128s.

BsonDocumentSerializer

Represents a serializer for BsonDocuments.

BsonDocumentWrapperSerializer

Represents a serializer for BsonDocumentWrappers.

BsonDoubleSerializer

Represents a serializer for BsonDoubles.

BsonInt32Serializer

Represents a serializer for BsonInt32s.

BsonInt64Serializer

Represents a serializer for BsonInt64s.

BsonJavaScriptSerializer

Represents a serializer for BsonJavaScripts.

BsonJavaScriptWithScopeSerializer

Represents a serializer for BsonJavaScriptWithScopes.

BsonMaxKeySerializer

Represents a serializer for BsonMaxKeys.

BsonMinKeySerializer

Represents a serializer for BsonMinKeys.

BsonNullSerializer

Represents a serializer for BsonNulls.

BsonObjectIdSerializer

Represents a serializer for BsonObjectIds.

BsonRegularExpressionSerializer

Represents a serializer for BsonRegularExpressions.

BsonStringSerializer

Represents a serializer for BsonStrings.

BsonSymbolSerializer

Represents a serializer for BsonSymbols.

BsonTimestampSerializer

Represents a serializer for BsonTimestamps.

BsonUndefinedSerializer

Represents a serializer for BsonUndefineds.

BsonValueCSharpNullArrayAndDocumentSerializer<TBsonValue>

Represents a serializer for a BsonValue that can round trip C# null and implements IBsonArraySerializer and IBsonDocumentSerializer.

BsonValueCSharpNullArraySerializer<TBsonValue>

Represents a serializer for a BsonValue that can round trip C# null and implements IBsonArraySerializer.

BsonValueCSharpNullDocumentSerializer<TBsonValue>

Represents a serializer for a BsonValue that can round trip C# null and implements IBsonDocumentSerializer.

BsonValueCSharpNullSerializer<TBsonValue>

Represents a serializer for a BsonValue that can round trip C# null.

BsonValueSerializer

Represents a serializer for BsonValues.

BsonValueSerializerBase<TBsonValue>

Represents a base class for BsonValue serializers.

ByteArraySerializer

Represents a serializer for ByteArrays.

ByteSerializer

Represents a serializer for Bytes.

CharSerializer

Represents a serializer for Chars.

ClassSerializerBase<TValue>

Represents an abstract base class for class serializers.

CultureInfoSerializer

Represents a serializer for CultureInfos.

DateTimeOffsetSerializer

Represents a serializer for DateTimeOffsets.

DateTimeSerializer

Represents a serializer for DateTimes.

Decimal128Serializer

Represents a serializer for Decimal128s.

DecimalSerializer

Represents a serializer for Decimals.

DictionaryInterfaceImplementerSerializer<TDictionary>

Represents a serializer for a class that implements IDictionary.

DictionaryInterfaceImplementerSerializer<TDictionary, TKey, TValue>

Represents a serializer for a class that implements IDictionary<TKey, TValue>.

DictionarySerializerBase<TDictionary>

Represents a serializer for dictionaries.

DictionarySerializerBase<TDictionary, TKey, TValue>

Represents a serializer for dictionaries.

DiscriminatedInterfaceSerializer<TInterface>

Represents a serializer for Interfaces.

DiscriminatedWrapperSerializer<TValue>

Represents a serializer that serializes values as a discriminator/value pair.

DoubleSerializer

Represents a serializer for Doubles.

DowncastingSerializer

Static factory class for DowncastingSerializer.

DowncastingSerializer<TBase, TDerived>

A serializer for TBase where the actual values are of type TDerived.

DynamicDocumentBaseSerializer<T>

Base serializer for dynamic types.

ElementAppendingSerializer<TDocument>

A serializer that serializes a document and appends elements to the end of it.

EnumSerializer

Static factory class for EnumSerializer.

EnumSerializer<TEnum>

Represents a serializer for enums.

EnumerableInterfaceImplementerSerializerBase<TValue>

Represents a serializer for enumerable values.

EnumerableInterfaceImplementerSerializerBase<TValue, TItem>

Represents a serializer for enumerable values.

EnumerableInterfaceImplementerSerializer<TValue>

Represents a serializer for a class that implements IEnumerable.

EnumerableInterfaceImplementerSerializer<TValue, TItem>

Represents a serializer for a class that implementes IEnumerable<T>.

EnumerableSerializerBase<TValue>

Represents a base serializer for enumerable values.

EnumerableSerializerBase<TValue, TItem>

Represents a serializer for enumerable values.

ExpandoObjectSerializer

Serializer for ExpandoObject.

GuidSerializer

Represents a serializer for Guids.

IEnumerableDeserializingAsCollectionSerializer<TIEnumerable, TItem, TCollection>

Represents a serializer for IEnumerable and any other derived interface implemented by TCollection.

IOrderedEnumerableSerializer

A factory class for instances of IOrderedEnumerableSerializer<TItem>.

IOrderedEnumerableSerializer<TItem>

Represents a serializer for IOrderedEnumerableTItem.

IPAddressSerializer

Represents a serializer for IPAddresses.

IPEndPointSerializer

Represents a serializer for IPEndPoints.

ImpliedImplementationInterfaceSerializer<TInterface, TImplementation>

Represents a serializer for Interfaces.

Int16Serializer

Represents a serializer for Int16s.

Int32Serializer

Represents a serializer for Int32.

Int64Serializer

Represents a serializer for Int64s.

KeyValuePairSerializer<TKey, TValue>

Represents a serializer for KeyValuePairs.

LazyBsonArraySerializer

Represents a serializer for LazyBsonArrays.

LazyBsonDocumentSerializer

Represents a serializer for LazyBsonDocuments.

MemorySerializerBase<TItem, TMemory>

Represents an abstract base class for Memory<T> and ReadOnlyMemory<T> serializers.

MemorySerializer<TItem>

Represents a serializer for Memory<T>.

NullableSerializer

Static factory class for NullableSerializers.

NullableSerializer<T>

Represents a serializer for nullable values.

ObjectIdSerializer

Represents a serializer for ObjectIds.

ObjectSerializer

Represents a serializer for objects.

PartiallyRawBsonDocumentSerializer

Represents a serializer for a BsonDocument with some parts raw.

ProjectingDeserializer<TFrom, TTo>

Wraps a serializer and projects using a function.

QueueSerializer

Represents a serializer for Queues.

QueueSerializer<TItem>

Represents a serializer for Queues.

RawBsonArraySerializer

Represents a serializer for RawBsonArrays.

RawBsonDocumentSerializer

Represents a serializer for RawBsonDocuments.

ReadOnlyCollectionSerializer<TItem>

Represents a serializer for readonly collection.

ReadOnlyCollectionSubclassSerializer<TValue, TItem>

Represents a serializer for a subclass of ReadOnlyCollection.

ReadOnlyDictionaryInterfaceImplementerSerializer<TDictionary, TKey, TValue>

Represents a serializer for a class that implements IDictionary<TKey, TValue>.

ReadonlyMemorySerializer<TItem>

Represents a serializer for ReadOnlyMemory<T>.

RegexSerializer

Represents a serializer for Regex.

SByteSerializer

Represents a serializer for SBytes.

SealedClassSerializerBase<TValue>

Represents an abstract base class for sealed class serializers.

SerializeAsNominalTypeSerializer<TActualType, TNominalType>

Represents a serializer for a class that will be serialized as if it were one of its base classes.

SerializerBase<TValue>

Represents an abstract base class for serializers.

SerializerHelper

Represents a helper for serializers.

SerializerHelper.Member

Represents information about a member.

SingleSerializer

Represents a serializer for Singles.

StackSerializer

Represents a serializer for Stacks.

StackSerializer<TItem>

Represents a serializer for Stacks.

StringSerializer

Represents a serializer for Strings.

StructSerializerBase<TValue>

Represents an abstract base class for struct serializers.

ThreeDimensionalArraySerializer<TItem>

Represents a serializer for three-dimensional arrays.

TimeSpanSerializer

Represents a serializer for Timespans.

TupleSerializer

A factory class for TupleSerializers.

TupleSerializer<T1>

Represents a serializer for a Tuple<T1>.

TupleSerializer<T1, T2>

Represents a serializer for a Tuple<T1, T2>.

TupleSerializer<T1, T2, T3>

Represents a serializer for a Tuple<T1, T2, T3>.

TupleSerializer<T1, T2, T3, T4>

Represents a serializer for a Tuple<T1, T2, T3, T4>.

TupleSerializer<T1, T2, T3, T4, T5>

Represents a serializer for a Tuple<T1, T2, T3, T4, T5>.

TupleSerializer<T1, T2, T3, T4, T5, T6>

Represents a serializer for a Tuple<T1, T2, T3, T4, T5, T6>.

TupleSerializer<T1, T2, T3, T4, T5, T6, T7>

Represents a serializer for a Tuple<T1, T2, T3, T4, T5, T6, T7>.

TupleSerializer<T1, T2, T3, T4, T5, T6, T7, TRest>

Represents a serializer for a Tuple<T1, T2, T3, T4, T5, T6, T7, TRest>.

TwoDimensionalArraySerializer<TItem>

Represents a serializer for two-dimensional arrays.

UInt16Serializer

Represents a serializer for UInt16s.

UInt32Serializer

Represents a serializer for UInt32s.

UInt64Serializer

Represents a serializer for UInt64s.

UndiscriminatedActualTypeSerializer<TValue>

Represents a serializer for interfaces and base classes that delegates to the actual type interface without writing a discriminator.

UriSerializer

Represents a serializer for Uris.

ValueTupleSerializer

A factory class for ValueTupleSerializers.

ValueTupleSerializer<T1>

Represents a serializer for a ValueTuple<T1>.

ValueTupleSerializer<T1, T2>

Represents a serializer for a (T1, T2).

ValueTupleSerializer<T1, T2, T3>

Represents a serializer for a (T1, T2, T3).

ValueTupleSerializer<T1, T2, T3, T4>

Represents a serializer for a (T1, T2, T3, T4).

ValueTupleSerializer<T1, T2, T3, T4, T5>

Represents a serializer for a (T1, T2, T3, T4, T5).

ValueTupleSerializer<T1, T2, T3, T4, T5, T6>

Represents a serializer for a (T1, T2, T3, T4, T5, T6).

ValueTupleSerializer<T1, T2, T3, T4, T5, T6, T7>

Represents a serializer for a (T1, T2, T3, T4, T5, T6, T7).

ValueTupleSerializer<T1, T2, T3, T4, T5, T6, T7, TRest>

Represents a serializer for a ValueTuple<T1, T2, T3, T4, T5, T6, T7, TRest>.

VersionSerializer

Represents a serializer for Versions.

Interfaces

IBsonTupleSerializer

An interface implemented by tuple serializers.

IDiscriminatedInterfaceSerializer

An interface implemented by DiscriminatedInterfaceSerializer.

IDowncastingSerializer

An interface implemented by DowncastingSerializer.

IImpliedImplementationInterfaceSerializer

An interface implemented by ImpliedImplementationInterfaceSerializer.

IKeyValuePairSerializer

An interface implemented by KeyValuePairSerializer.

INullableSerializer

An interface used by the LINQ3 translators to access the value serializer without needing to use reflection.