MongoDB.Bson.IO.BsonWriter.WriteRawBsonDocument C# (CSharp) Method

WriteRawBsonDocument() public method

Writes a raw BSON document.
public WriteRawBsonDocument ( IByteBuffer slice ) : void
slice IByteBuffer The byte buffer containing the raw BSON document.
return void
        public virtual void WriteRawBsonDocument(IByteBuffer slice)
        {
            // overridden in BsonBinaryWriter
            using (var bsonReader = new BsonBinaryReader(new BsonBuffer(slice, false), true, BsonBinaryReaderSettings.Defaults))
            {
                var document = BsonSerializer.Deserialize<BsonDocument>(bsonReader);
                BsonDocumentSerializer.Instance.Serialize(this, typeof(BsonDocument), document, null);
            }
        }

Same methods

BsonWriter::WriteRawBsonDocument ( string name, IByteBuffer slice ) : void

Usage Example

 /// <summary>
 /// Serializes an object to a BsonWriter.
 /// </summary>
 /// <param name="bsonWriter">The BsonWriter.</param>
 /// <param name="nominalType">The nominal type.</param>
 /// <param name="value">The object.</param>
 /// <param name="options">The serialization options.</param>
 public override void Serialize(
     BsonWriter bsonWriter,
     Type nominalType,
     object value,
     IBsonSerializationOptions options)
 {
     if (value == null)
     {
         bsonWriter.WriteNull();
     }
     else
     {
         var rawBsonDocument = (RawBsonDocument)value;
         var slice = rawBsonDocument.Slice;
         using (var clonedSlice = slice.GetSlice(0, slice.Length))
         {
             bsonWriter.WriteRawBsonDocument(clonedSlice);
         }
     }
 }
All Usage Examples Of MongoDB.Bson.IO.BsonWriter::WriteRawBsonDocument