Table of Contents

Class EnumerableSerializerBase<TValue>

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

Represents a base serializer for enumerable values.

public abstract class EnumerableSerializerBase<TValue> : SerializerBase<TValue>, IBsonSerializer<TValue>, IBsonArraySerializer, IBsonSerializer where TValue : class, IEnumerable

Type Parameters

TValue

The type of the value.

Inheritance
EnumerableSerializerBase<TValue>
Implements
Derived
Inherited Members
Extension Methods

Constructors

EnumerableSerializerBase()

Initializes a new instance of the EnumerableSerializerBase<TValue> class.

protected EnumerableSerializerBase()

EnumerableSerializerBase(IBsonSerializer)

Initializes a new instance of the EnumerableSerializerBase<TValue> class.

protected EnumerableSerializerBase(IBsonSerializer itemSerializer)

Parameters

itemSerializer IBsonSerializer

The item serializer.

EnumerableSerializerBase(IBsonSerializerRegistry)

Initializes a new instance of the EnumerableSerializerBase<TValue> class.

protected EnumerableSerializerBase(IBsonSerializerRegistry serializerRegistry)

Parameters

serializerRegistry IBsonSerializerRegistry

The serializer registry.

Properties

ItemSerializer

Gets the item serializer.

public IBsonSerializer ItemSerializer { get; }

Property Value

IBsonSerializer

The item serializer.

Methods

AddItem(object, object)

Adds the item.

protected abstract void AddItem(object accumulator, object item)

Parameters

accumulator object

The accumulator.

item object

The item.

CreateAccumulator()

Creates the accumulator.

protected abstract object CreateAccumulator()

Returns

object

The accumulator.

Deserialize(BsonDeserializationContext, BsonDeserializationArgs)

Deserializes a value.

public override TValue Deserialize(BsonDeserializationContext context, BsonDeserializationArgs args)

Parameters

context BsonDeserializationContext

The deserialization context.

args BsonDeserializationArgs

The deserialization args.

Returns

TValue

A deserialized value.

EnumerateItemsInSerializationOrder(TValue)

Enumerates the items in serialization order.

protected abstract IEnumerable EnumerateItemsInSerializationOrder(TValue value)

Parameters

value TValue

The value.

Returns

IEnumerable

The items.

FinalizeResult(object)

Finalizes the result.

protected abstract TValue FinalizeResult(object accumulator)

Parameters

accumulator object

The accumulator.

Returns

TValue

The final result.

Serialize(BsonSerializationContext, BsonSerializationArgs, TValue)

Serializes a value.

public override void Serialize(BsonSerializationContext context, BsonSerializationArgs args, TValue value)

Parameters

context BsonSerializationContext

The serialization context.

args BsonSerializationArgs

The serialization args.

value TValue

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.