internal static bool IsJsonPrimitiveType(Type type) { if (ReflectionUtils.IsNullableType(type)) { type = Nullable.GetUnderlyingType(type); } if (type == typeof(DateTimeOffset)) { return(true); } if (type == typeof(byte[])) { return(true); } if (type == typeof(Uri)) { return(true); } if (type == typeof(TimeSpan)) { return(true); } if (type == typeof(Guid)) { return(true); } return(JsonConvert.IsJsonPrimitiveTypeCode(Type.GetTypeCode(type))); }
internal static bool IsJsonPrimitive(object value) { if (value == null) { return(true); } IConvertible convertible = value as IConvertible; if (convertible != null) { return(JsonConvert.IsJsonPrimitiveTypeCode(convertible.GetTypeCode())); } if (value is DateTimeOffset) { return(true); } if (value is byte[]) { return(true); } if (value is Uri) { return(true); } if (value is TimeSpan) { return(true); } if (value is Guid) { return(true); } return(false); }