MongoDB.Bson.Serialization.Serializers.BsonObjectIdSerializer.Deserialize C# (CSharp) Method

Deserialize() public method

Deserializes an object from a BsonReader.
public Deserialize ( BsonReader bsonReader, Type nominalType, Type actualType, IBsonSerializationOptions options ) : object
bsonReader BsonReader The BsonReader.
nominalType System.Type The nominal type of the object.
actualType System.Type The actual type of the object.
options IBsonSerializationOptions The serialization options.
return object
        public override object Deserialize(
            BsonReader bsonReader,
            Type nominalType,
            Type actualType,
            IBsonSerializationOptions options)
        {
            VerifyTypes(nominalType, actualType, typeof(BsonObjectId));

            var bsonType = bsonReader.GetCurrentBsonType();
            switch (bsonType)
            {
                case BsonType.ObjectId:
                    return new BsonObjectId(bsonReader.ReadObjectId());
                default:
                    var message = string.Format("Cannot deserialize BsonObjectId from BsonType {0}.", bsonType);
                    throw new Exception(message);
            }
        }