public string Serialize <T>(T value)
{
var writer = new StringWriter();
var uson = new UsonWriter(writer);
uson.DefaultProperty = defaultPropertyMap.GetOrAdd(typeof(T), key =>
{
return(typeof(T)
.GetCustomAttributes(true)
.OfType <DefaultPropertyAttribute>()
.Select(x => x.Name)
.FirstOrDefault() ?? "");
});
this.serializer.Serialize(uson, value);
uson.Flush();
return(writer.ToString());
}