public WriteValue ( object value ) : void | ||
value | object | The |
return | void |
public virtual void WriteValue(object value)
{
if (value == null)
{
WriteNull();
}
else
{
#if !(NET20 || NET35 || PORTABLE || PORTABLE40) || NETSTANDARD1_1
// this is here because adding a WriteValue(BigInteger) to JsonWriter will
// mean the user has to add a reference to System.Numerics.dll
if (value is BigInteger)
{
throw CreateUnsupportedTypeException(this, value);
}
#endif
WriteValue(this, ConvertUtils.GetTypeCode(value.GetType()), value);
}
}
#endregion
JsonWriter::WriteValue ( DateTime value ) : void | |
JsonWriter::WriteValue ( DateTimeOffset value ) : void | |
JsonWriter::WriteValue ( Guid value ) : void | |
JsonWriter::WriteValue ( JsonWriter writer, PrimitiveTypeCode typeCode, object value ) : void | |
JsonWriter::WriteValue ( TimeSpan value ) : void | |
JsonWriter::WriteValue ( Uri value ) : void | |
JsonWriter::WriteValue ( bool value ) : void | |
JsonWriter::WriteValue ( byte value ) : void | |
JsonWriter::WriteValue ( char value ) : void | |
JsonWriter::WriteValue ( decimal value ) : void | |
JsonWriter::WriteValue ( double value ) : void | |
JsonWriter::WriteValue ( float value ) : void | |
JsonWriter::WriteValue ( int value ) : void | |
JsonWriter::WriteValue ( long value ) : void | |
JsonWriter::WriteValue ( sbyte value ) : void | |
JsonWriter::WriteValue ( short value ) : void | |
JsonWriter::WriteValue ( string value ) : void | |
JsonWriter::WriteValue ( uint value ) : void | |
JsonWriter::WriteValue ( ulong value ) : void | |
JsonWriter::WriteValue ( ushort value ) : void |
/// <summary> /// Writes the JSON representation of the object. /// </summary> /// <param name="writer">The <see cref="JsonWriter"/> to write to.</param> /// <param name="value">The value.</param> /// <param name="serializer">The calling serializer.</param> public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer) { if (value == null) { writer.WriteNull(); return; } Enum e = (Enum)value; string enumName = e.ToString("G"); if (char.IsNumber(enumName[0]) || enumName[0] == '-') { // enum value has no name so write number writer.WriteValue(value); } else { Type enumType = e.GetType(); string finalName = EnumUtils.ToEnumName(enumType, enumName, CamelCaseText); writer.WriteValue(finalName); } }