我想知道如何在 ServiceStack 中使用自定义 JSON 序列化程序。我知道 JsConfig.SerializeFn/DeSerializeFn 但这些似乎总是“JSON.stringify”我的自定义序列化程序的结果。
我喜欢替换整个 DTO 的序列化。最终结果应该是这样的
{"Name":"Greg"}
并不是
"{\"Name\":\"Greg\"}"
那可能吗?
我想知道如何在 ServiceStack 中使用自定义 JSON 序列化程序。我知道 JsConfig.SerializeFn/DeSerializeFn 但这些似乎总是“JSON.stringify”我的自定义序列化程序的结果。
我喜欢替换整个 DTO 的序列化。最终结果应该是这样的
{"Name":"Greg"}
并不是
"{\"Name\":\"Greg\"}"
那可能吗?
就ServiceStack 的 JSON 序列化器中的其他钩子而言,JsConfig<T>.RawSerializeFn
还有哪些JsConfig<T>.RawDeserializeFn
应该可以满足您的需求。
否则,如果您只想进行一些前/后处理,还有JsConfig<T>.OnSerializingFn
自JsConfig<T>.OnDeserializedFn
定义钩子。
你的意思是使用ServiceStack.Text.JsonSerializer.SerializeToString(object, typeof(object))
?如果您在 .net 的视图中使用它,您可能需要使用Html.Raw(ServiceStack.Text.JsonSerializer.SerializeToString(object, typeof(object)))
.