Table of Contents

Class DictionarySerializerBase<TDictionary, TKey, TValue>

Namespace
MongoDB.Bson.Serialization.Serializers
Assembly
MongoDB.Bson.dll

Represents a serializer for dictionaries.

public abstract class DictionarySerializerBase<TDictionary, TKey, TValue> : ClassSerializerBase<TDictionary>, IBsonSerializer<TDictionary>, IBsonArraySerializer, IBsonDocumentSerializer, IBsonSerializer, IBsonDictionarySerializer where TDictionary : class, IEnumerable<KeyValuePair<TKey, TValue>>

Type Parameters

TDictionary

The type of the dictionary.

TKey

The type of the keys.

TValue

The type of the values.

Inheritance
SerializerBase<TDictionary>
ClassSerializerBase<TDictionary>
DictionarySerializerBase<TDictionary, TKey, TValue>
Implements
IBsonSerializer<TDictionary>
Derived
Inherited Members
Extension Methods

Constructors

DictionarySerializerBase()

Initializes a new instance of the DictionarySerializerBase<TDictionary, TKey, TValue> class.

public DictionarySerializerBase()

DictionarySerializerBase(DictionaryRepresentation)

Initializes a new instance of the DictionarySerializerBase<TDictionary, TKey, TValue> class.

public DictionarySerializerBase(DictionaryRepresentation dictionaryRepresentation)

Parameters

dictionaryRepresentation DictionaryRepresentation

The dictionary representation.

DictionarySerializerBase(DictionaryRepresentation, IBsonSerializerRegistry)

Initializes a new instance of the DictionarySerializerBase<TDictionary, TKey, TValue> class.

public DictionarySerializerBase(DictionaryRepresentation dictionaryRepresentation, IBsonSerializerRegistry serializerRegistry)

Parameters

dictionaryRepresentation DictionaryRepresentation

The dictionary representation.

serializerRegistry IBsonSerializerRegistry

The serializer registry.

DictionarySerializerBase(DictionaryRepresentation, IBsonSerializer<TKey>, IBsonSerializer<TValue>)

Initializes a new instance of the DictionarySerializerBase<TDictionary, TKey, TValue> class.

public DictionarySerializerBase(DictionaryRepresentation dictionaryRepresentation, IBsonSerializer<TKey> keySerializer, IBsonSerializer<TValue> valueSerializer)

Parameters

dictionaryRepresentation DictionaryRepresentation

The dictionary representation.

keySerializer IBsonSerializer<TKey>

The key serializer.

valueSerializer IBsonSerializer<TValue>

The value serializer.

Properties

DictionaryRepresentation

Gets the dictionary representation.

public DictionaryRepresentation DictionaryRepresentation { get; }

Property Value

DictionaryRepresentation

The dictionary representation.

KeySerializer

Gets the key serializer.

public IBsonSerializer<TKey> KeySerializer { get; }

Property Value

IBsonSerializer<TKey>

The key serializer.

ValueSerializer

Gets the value serializer.

public IBsonSerializer<TValue> ValueSerializer { get; }

Property Value

IBsonSerializer<TValue>

The value serializer.

Methods

CreateAccumulator()

Creates an accumulator.

protected virtual ICollection<KeyValuePair<TKey, TValue>> CreateAccumulator()

Returns

ICollection<KeyValuePair<TKey, TValue>>

The accumulator.

CreateInstance()

Creates the instance.

[Obsolete("CreateInstance is deprecated. Please use CreateAccumulator instead.")]
protected virtual TDictionary CreateInstance()

Returns

TDictionary

The instance.

DeserializeValue(BsonDeserializationContext, BsonDeserializationArgs)

Deserializes a value.

protected override TDictionary DeserializeValue(BsonDeserializationContext context, BsonDeserializationArgs args)

Parameters

context BsonDeserializationContext

The deserialization context.

args BsonDeserializationArgs

The deserialization args.

Returns

TDictionary

A deserialized value.

FinalizeAccumulator(ICollection<KeyValuePair<TKey, TValue>>)

Finalizes an accumulator.

protected virtual TDictionary FinalizeAccumulator(ICollection<KeyValuePair<TKey, TValue>> accumulator)

Parameters

accumulator ICollection<KeyValuePair<TKey, TValue>>

The accumulator to finalize

Returns

TDictionary

The instance.

SerializeValue(BsonSerializationContext, BsonSerializationArgs, TDictionary)

Serializes a value.

protected override void SerializeValue(BsonSerializationContext context, BsonSerializationArgs args, TDictionary value)

Parameters

context BsonSerializationContext

The serialization context.

args BsonSerializationArgs

The serialization args.

value TDictionary

The object.

TryGetItemSerializationInfo(out BsonSerializationInfo)

Tries to get the serialization info for the individual items of the array.

public bool TryGetItemSerializationInfo(out BsonSerializationInfo serializationInfo)

Parameters

serializationInfo BsonSerializationInfo

The serialization information.

Returns

bool

true if the serialization info exists; otherwise false.

TryGetMemberSerializationInfo(string, out BsonSerializationInfo)

Tries to get the serialization info for a member.

public bool TryGetMemberSerializationInfo(string memberName, out BsonSerializationInfo serializationInfo)

Parameters

memberName string

Name of the member.

serializationInfo BsonSerializationInfo

The serialization information.

Returns

bool

true if the serialization info exists; otherwise false.