public void Serialize(BsonSerializationContext context, BsonSerializationArgs args, object value)
 {
     if (value == null)
     {
         context.Writer.WriteNull();
     }
     else
     {
         context.Writer.WriteString((string)value);
     }
 }
        public void Serialize(BsonSerializationContext context, BsonSerializationArgs args, object value)
        {
            BsonWriter bsonWriter = (BsonWriter)context.Writer;

            bsonWriter.WriteStartDocument();
            bsonWriter.WriteString(ID, this.Name);
            MemoryStream stream = new MemoryStream();
            new BinaryFormatter().Serialize(stream, this.Calendar);
            bsonWriter.WriteBinaryData(CONTENT_STREAM, new BsonBinaryData(stream.ToArray(), BsonBinarySubType.Binary));
            bsonWriter.WriteEndDocument();
        }
Exemple #3
0
        public static string ToJson(this BsonValue value, JsonWriterSettingsExtended settings = null)
        {
            StringBuilder sb         = new StringBuilder();
            var           serializer = MongoDB.Bson.Serialization.BsonSerializer.LookupSerializer(typeof(BsonValue));

            MongoDB.Bson.Serialization.BsonSerializationArgs args = default(MongoDB.Bson.Serialization.BsonSerializationArgs);

            using (var stringWriter = new System.IO.StringWriter())
            {
                using (var bsonWriter = new LocalDateTimeJsonWriter(stringWriter, settings))
                {
                    var context = MongoDB.Bson.Serialization.BsonSerializationContext.CreateRoot(bsonWriter, null);
                    args.NominalType = typeof(BsonValue);
                    serializer.Serialize(context, args, value);
                }
                sb.Append(stringWriter.ToString());
            }

            return(sb.ToString());
        }
        public void Serialize( BsonSerializationContext context, BsonSerializationArgs args, object value )
        {
            var dictionary = (DynamicDictionary)value;

            var bsonWriter = context.Writer;
            bsonWriter.WriteStartDocument();

            bsonWriter.WriteString( "_t", "DynamicDictionary" );

            if( dictionary != null )
            {
                foreach( var entry in dictionary )
                {
                    bsonWriter.WriteName( entry.Key.Replace( '.', '\x03' ) );
                    BsonSerializer.Serialize( bsonWriter, typeof( object ), entry.Value );
                }
            }

            bsonWriter.WriteEndDocument();
        }
            public void Serialize(BsonSerializationContext context, BsonSerializationArgs args, object value)
            {
                if (value == null)
                {
                    context.Writer.WriteNull();
                }
                else
                {
                    var stringValue = value.ToString();

                    if (string.IsNullOrWhiteSpace(stringValue))
                    {
                        context.Writer.WriteNull();
                    }
                    else
                    {
                        stringValue = string.Concat(char.ToLowerInvariant(stringValue[0]), stringValue.Substring(1));
                        context.Writer.WriteString(stringValue);
                    }
                }
            }
 {                                                           // read most types as int but write to double
     public override void Serialize(MongoDB.Bson.Serialization.BsonSerializationContext context, MongoDB.Bson.Serialization.BsonSerializationArgs args, BsonInt32 ival)
     {
         context.Writer.WriteDouble(ival.ToDouble());
     }
Exemple #7
0
        /// <summary>
        /// Serializes a value.
        /// </summary>
        /// <param name="context">The serialization context.</param>
        /// <param name="args">The serialization args.</param>
        /// <param name="value">The object.</param>
        protected override void SerializeValue(BsonSerializationContext context, BsonSerializationArgs args, TClass value)
        {
            var backingDocument = ((BsonDocumentBackedClass)value).BackingDocument;

            BsonDocumentSerializer.Instance.Serialize(context, backingDocument);
        }
Exemple #8
0
 public void Serialize(BsonSerializationContext context, BsonSerializationArgs args, object value)
 {
     GenerateBsonValue(context.Writer, value as JToken);
 }
Exemple #9
0
        /// <summary>
        /// The Serialize function.
        /// </summary>
        /// <param name="context">The context parameter.</param>
        /// <param name="args">The arguments parameter.</param>
        /// <param name="value">The value parameter.</param>
        public override void Serialize(MongoDB.Bson.Serialization.BsonSerializationContext context, MongoDB.Bson.Serialization.BsonSerializationArgs args, List <ClientAddressDto> value)
        {
            context?.Writer.WriteStartArray();
            foreach (ClientAddressDto mvnt in value)
            {
                context.Writer.WriteStartDocument();
                context.Writer.WriteName("Street");
                context.Writer.WriteString(mvnt.Street);
                context.Writer.WriteName("Number");
                context.Writer.WriteString(mvnt.Number);
                context.Writer.WriteName("PostalCode");
                context.Writer.WriteString(mvnt.PostalCode);
                context.Writer.WriteEndDocument();
            }

            context.Writer.WriteEndArray();
        }
Exemple #10
0
 public void Serialize(BsonSerializationContext context, BsonSerializationArgs args, object value)
 {
     context.Writer.WriteString(value.ToString());
 }
 public void Serialize(BsonSerializationContext context, BsonSerializationArgs args, object value)
 {
     throw new NotImplementedException();
 }
 public void Serialize(BsonSerializationContext context, BsonSerializationArgs args, object value)
 {
     GrainReference gr = value as GrainReference;
     var str = gr != null ? gr.ToKeyString() : "";
     context.Writer.WriteString(str);
 }