Table of Contents

Class ImpliedImplementationInterfaceSerializer<TInterface, TImplementation>

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

Represents a serializer for Interfaces.

public class ImpliedImplementationInterfaceSerializer<TInterface, TImplementation> : SerializerBase<TInterface>, IBsonSerializer<TInterface>, IBsonArraySerializer, IBsonDictionarySerializer, IBsonDocumentSerializer, IBsonSerializer, IChildSerializerConfigurable where TImplementation : class, TInterface

Type Parameters

TInterface

The type of the interface.

TImplementation

The type of the implementation.

Inheritance
SerializerBase<TInterface>
ImpliedImplementationInterfaceSerializer<TInterface, TImplementation>
Implements
IBsonSerializer<TInterface>
Inherited Members
Extension Methods

Constructors

ImpliedImplementationInterfaceSerializer()

public ImpliedImplementationInterfaceSerializer()

ImpliedImplementationInterfaceSerializer(IBsonSerializerRegistry)

public ImpliedImplementationInterfaceSerializer(IBsonSerializerRegistry serializerRegistry)

Parameters

serializerRegistry IBsonSerializerRegistry

The serializer registry.

ImpliedImplementationInterfaceSerializer(IBsonSerializer<TImplementation>)

public ImpliedImplementationInterfaceSerializer(IBsonSerializer<TImplementation> implementationSerializer)

Parameters

implementationSerializer IBsonSerializer<TImplementation>

The implementation serializer.

Properties

DictionaryRepresentation

Gets the dictionary representation.

public DictionaryRepresentation DictionaryRepresentation { get; }

Property Value

DictionaryRepresentation

The dictionary representation.

Exceptions

NotSupportedException

ImplementationSerializer

Gets the implementation serializer.

public IBsonSerializer<TImplementation> ImplementationSerializer { get; }

Property Value

IBsonSerializer<TImplementation>

The implementation serializer.

KeySerializer

Gets the key serializer.

public IBsonSerializer KeySerializer { get; }

Property Value

IBsonSerializer

The key serializer.

Exceptions

NotSupportedException

ValueSerializer

Gets the value serializer.

public IBsonSerializer ValueSerializer { get; }

Property Value

IBsonSerializer

The value serializer.

Exceptions

NotSupportedException

Methods

Deserialize(BsonDeserializationContext, BsonDeserializationArgs)

Deserializes a value.

public override TInterface Deserialize(BsonDeserializationContext context, BsonDeserializationArgs args)

Parameters

context BsonDeserializationContext

The deserialization context.

args BsonDeserializationArgs

The deserialization args.

Returns

TInterface

A deserialized value.

Exceptions

FormatException

Serialize(BsonSerializationContext, BsonSerializationArgs, TInterface)

Serializes a value.

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

Parameters

context BsonSerializationContext

The serialization context.

args BsonSerializationArgs

The serialization args.

value TInterface

The document.

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.

WithImplementationSerializer(IBsonSerializer<TImplementation>)

Returns a serializer that has been reconfigured with the specified implementation serializer.

public ImpliedImplementationInterfaceSerializer<TInterface, TImplementation> WithImplementationSerializer(IBsonSerializer<TImplementation> implementationSerializer)

Parameters

implementationSerializer IBsonSerializer<TImplementation>

The implementation serializer.

Returns

ImpliedImplementationInterfaceSerializer<TInterface, TImplementation>

The reconfigured serializer.