public void WriteObject <T>(T value) { if (value == null) { Write(0); return; } ContentTypeWriter writer = _manager.GetTypeWriter(value.GetType()); int index; if (!_typeMap.TryGetValue(writer, out index)) { index = _contentWriterList.Count; _contentWriterList.Add(writer); _typeMap.Add(writer, index); } if (!writer.IsPrimitiveType) { Write(index + 1); } writer.Write(this, value); }
public void WriteRawObject <T>(T value) { ContentTypeWriter writer = _manager.GetTypeWriter(typeof(T)); int index; if (!_typeMap.TryGetValue(writer, out index)) { index = _contentWriterList.Count; _contentWriterList.Add(writer); _typeMap.Add(writer, index); } writer.Write(this, value); }
public void WriteRawObject <T>(T value, ContentTypeWriter writer) { writer.Write(this, value); }