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()
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
serializerRegistry
IBsonSerializerRegistryThe serializer registry.
ImpliedImplementationInterfaceSerializer(IBsonSerializer<TImplementation>)
Initializes a new instance of the ImpliedImplementationInterfaceSerializer<TInterface, TImplementation> class.
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
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
context
BsonDeserializationContextThe deserialization context.
args
BsonDeserializationArgsThe 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
context
BsonSerializationContextThe serialization context.
args
BsonSerializationArgsThe serialization args.
value
TInterfaceThe 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
BsonSerializationInfoThe serialization information.
Returns
- bool
true
if 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
memberName
stringName of the member.
serializationInfo
BsonSerializationInfoThe serialization information.
Returns
- bool
true
if 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
implementationSerializer
IBsonSerializer<TImplementation>The implementation serializer.
Returns
- ImpliedImplementationInterfaceSerializer<TInterface, TImplementation>
The reconfigured serializer.