private JsonExpression SerializeConstant(object obj, Type type) { using var stream = new MemoryStream(); using var reader = new StreamReader(stream); var serialize = _genericSerialize.MakeGenericMethod(new[] { type }); serialize.Invoke(DataSerializer, new[] { obj, stream }); stream.Position = 0; return(JsonExpression.Parse(reader.ReadToEnd(), ensureTopLevelObjectOrArray: false)); }
private object DeserializeConstant(JsonExpression obj, Type type) { using var stream = new MemoryStream(); using var writer = new StreamWriter(stream); var deserialize = _genericDeserialize.MakeGenericMethod(new[] { type }); writer.Write(obj.ToString()); writer.Flush(); stream.Position = 0; return(deserialize.Invoke(DataSerializer, new[] { stream })); }