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
TInterfaceThe type of the interface.
TImplementationThe type of the implementation.
- Inheritance
-
SerializerBase<TInterface>ImpliedImplementationInterfaceSerializer<TInterface, TImplementation>
- Implements
-
IBsonSerializer<TInterface>
- Inherited Members
- Extension Methods
Constructors
ImpliedImplementationInterfaceSerializer()
Initializes a new instance of the ImpliedImplementationInterfaceSerializer<TInterface, TImplementation> class.
public ImpliedImplementationInterfaceSerializer()
ImpliedImplementationInterfaceSerializer(IBsonSerializerRegistry)
Initializes a new instance of the ImpliedImplementationInterfaceSerializer<TInterface, TImplementation> class.
public ImpliedImplementationInterfaceSerializer(IBsonSerializerRegistry serializerRegistry)
Parameters
serializerRegistryIBsonSerializerRegistryThe serializer registry.
ImpliedImplementationInterfaceSerializer(IBsonSerializer<TImplementation>)
Initializes a new instance of the ImpliedImplementationInterfaceSerializer<TInterface, TImplementation> class.
public ImpliedImplementationInterfaceSerializer(IBsonSerializer<TImplementation> implementationSerializer)
Parameters
implementationSerializerIBsonSerializer<TImplementation>The implementation serializer.
Properties
DictionaryRepresentation
Gets the dictionary representation.
public DictionaryRepresentation DictionaryRepresentation { get; }
Property Value
- DictionaryRepresentation
The dictionary representation.
Exceptions
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
ValueSerializer
Gets the value serializer.
public IBsonSerializer ValueSerializer { get; }
Property Value
- IBsonSerializer
The value serializer.
Exceptions
Methods
Deserialize(BsonDeserializationContext, BsonDeserializationArgs)
Deserializes a value.
public override TInterface Deserialize(BsonDeserializationContext context, BsonDeserializationArgs args)
Parameters
contextBsonDeserializationContextThe deserialization context.
argsBsonDeserializationArgsThe deserialization args.
Returns
- TInterface
A deserialized value.
Exceptions
Serialize(BsonSerializationContext, BsonSerializationArgs, TInterface)
Serializes a value.
public override void Serialize(BsonSerializationContext context, BsonSerializationArgs args, TInterface value)
Parameters
contextBsonSerializationContextThe serialization context.
argsBsonSerializationArgsThe serialization args.
valueTInterfaceThe document.
TryGetItemSerializationInfo(out BsonSerializationInfo)
Tries to get the serialization info for the individual items of the array.
public bool TryGetItemSerializationInfo(out BsonSerializationInfo serializationInfo)
Parameters
serializationInfoBsonSerializationInfoThe serialization information.
Returns
- bool
trueif the serialization info exists; otherwisefalse.
TryGetMemberSerializationInfo(string, out BsonSerializationInfo)
Tries to get the serialization info for a member.
public bool TryGetMemberSerializationInfo(string memberName, out BsonSerializationInfo serializationInfo)
Parameters
memberNamestringName of the member.
serializationInfoBsonSerializationInfoThe serialization information.
Returns
- bool
trueif the serialization info exists; otherwisefalse.
WithImplementationSerializer(IBsonSerializer<TImplementation>)
Returns a serializer that has been reconfigured with the specified implementation serializer.
public ImpliedImplementationInterfaceSerializer<TInterface, TImplementation> WithImplementationSerializer(IBsonSerializer<TImplementation> implementationSerializer)
Parameters
implementationSerializerIBsonSerializer<TImplementation>The implementation serializer.
Returns
- ImpliedImplementationInterfaceSerializer<TInterface, TImplementation>
The reconfigured serializer.