/// <inheritdoc cref="ISerializationElement.Serialize" /> public void Serialize(HessianOutputWriter writer, object graph, HessianSerializationContext context) { if (null == graph) { writer.WriteNull(); return; } var index = context.Instances.IndexOf(graph); if (index > -1) { writer.WriteInstanceReference(index); return; } context.Instances.Add(graph); index = context.Classes.IndexOf(ObjectType); if (0 > index) { } using (writer.BeginArray(ObjectType.Name)) { foreach (var item in (IEnumerable)graph) { Element.Serialize(writer, item, context); } } }
/// <inheritdoc cref="ISerializationElement.Serialize" /> public void Serialize(HessianOutputWriter writer, object graph, HessianSerializationContext context) { if (null == graph) { writer.WriteNull(); return; } var index = context.Instances.IndexOf(graph); if (index > -1) { writer.WriteInstanceReference(index); return; } context.Instances.Add(graph); index = context.Classes.IndexOf(ObjectType); if (0 > index) { } WriteArray(writer, (Array)graph, context); }
public void Serialize(HessianOutputWriter writer, object graph, HessianSerializationContext context) { if (null == graph) { writer.WriteNull(); return; } using (writer.BeginCall(MethodInfo.Name)) { var parameters = (Array)graph; for (var index = 0; index < Arguments.Count; index++) { Arguments[index].Serialize(writer, parameters.GetValue(index), context); } } /*var index = context.Instances.IndexOf(graph); * * if (index > -1) * { * writer.WriteInstanceReference(index); * return; * } * * context.Instances.Add(graph); * * index = context.Classes.IndexOf(ObjectType); * * if (0 > index) * { * * }*/ /*using (writer.BeginArray(ObjectType.Name)) * { * foreach (var item in (IEnumerable)graph) * { * Element.Serialize(writer, item, context); * } * }*/ }
/// <inheritdoc /> public void Serialize(HessianOutputWriter writer, object graph, HessianSerializationContext context) { if (null == graph) { writer.WriteNull(); return; } /*var index = context.Instances.IndexOf(graph); * * if (index > -1) * { * writer.WriteInstanceReference(index); * return; * } * * context.Instances.Add(graph);*/ writer.WriteBytes((byte[])graph); }