Esempio n. 1
0
        public static string SerializeChanges(List <Change> changes)
        {
            using (var context = SerializingContext.Create(null, null))
            {
                var writer = context.Writer;

                writer.WriteStartArray();
                foreach (var change in changes)
                {
                    writer.WriteStartObject();

                    writer.WritePropertyName("op");
                    writer.WriteValue(change.Type.ToString().ToLowerInvariant());

                    writer.WritePropertyName("path");
                    writer.WriteValue(change.Path);

                    switch (change.Type)
                    {
                    case ChangeType.Add:
                    case ChangeType.Replace:
                        writer.WritePropertyName("value");
                        writer.WriteRawValue(change.Serialized);
                        break;
                    }
                    writer.WriteEndObject();
                }

                writer.WriteEndArray();
                return(context.StringWriter.ToString());
            }
        }
Esempio n. 2
0
 public string Serialize(object obj, Filter filter)
 {
     using (var context = SerializingContext.Create(_serializer, filter))
     {
         SerializeMemberValue(obj, context);
         return(context.StringWriter.ToString());
     }
 }