2013-01-17 8 views
6

Tôi tự hỏi làm thế nào bạn có thể sử dụng một serializer JSON tùy chỉnh trong ServiceStack. Tôi biết về JsConfig.SerializeFn/DeSerializeFn nhưng dường như luôn là 'JSON.stringify' là kết quả của Trình tùy chỉnh Serializer của tôi.Làm thế nào để sử dụng một serializer JSON tùy chỉnh trong Servicestack?

Tôi muốn thay thế Tuần tự hóa cho toàn bộ DTO. Các endresult nên một cái gì đó giống như

{"Name":"Greg"} 

và không

"{\"Name\":\"Greg\"}" 

Là có thể?

Trả lời

0

Ý của bạn là sử dụng ServiceStack.Text.JsonSerializer.SerializeToString(object, typeof(object))? Nếu bạn sử dụng nó trong chế độ xem trong .net, bạn có thể cần sử dụng Html.Raw(ServiceStack.Text.JsonSerializer.SerializeToString(object, typeof(object))).

7

Về các móc khác trong ServiceStack's JSON Serializers cũng có JsConfig<T>.RawSerializeFnJsConfig<T>.RawDeserializeFn nên làm những gì bạn cần.

Nếu không, nếu bạn chỉ muốn xử lý trước/sau, cũng có các móc tùy chỉnh JsConfig<T>.OnSerializingFnJsConfig<T>.OnDeserializedFn.