public override bool TryGetElement(string name, out BsonElement element)
{
ThrowIfDisposed();
using (var bsonReader = new BsonBinaryReader(new BsonBuffer(CloneSlice(), true), true, _readerSettings))
{
bsonReader.ReadStartDocument();
while (bsonReader.ReadBsonType() != BsonType.EndOfDocument)
{
if (bsonReader.ReadName() == name)
{
var value = DeserializeBsonValue(bsonReader);
element = new BsonElement(name, value);
return true;
}
bsonReader.SkipValue();
}
bsonReader.ReadEndDocument();
element = null;
return false;
}
}