@@ -17,6 +17,11 @@ public class DefaultJsonSerializer : IEasyCachingSerializer
17
17
/// </summary>
18
18
private readonly JsonSerializer jsonSerializer ;
19
19
20
+ /// <summary>
21
+ /// default utf-8 encoding
22
+ /// </summary>
23
+ private static readonly UTF8Encoding s_utf8Encoding = new UTF8Encoding ( encoderShouldEmitUTF8Identifier : false , throwOnInvalidBytes : true ) ;
24
+
20
25
/// <summary>
21
26
/// The name.
22
27
/// </summary>
@@ -48,7 +53,7 @@ public DefaultJsonSerializer(string name, JsonSerializerSettings serializerSetti
48
53
public T Deserialize < T > ( byte [ ] bytes )
49
54
{
50
55
using ( var ms = new MemoryStream ( bytes ) )
51
- using ( var sr = new StreamReader ( ms , Encoding . UTF8 ) )
56
+ using ( var sr = new StreamReader ( ms , s_utf8Encoding ) )
52
57
using ( var jtr = new JsonTextReader ( sr ) )
53
58
{
54
59
return jsonSerializer . Deserialize < T > ( jtr ) ;
@@ -64,7 +69,7 @@ public T Deserialize<T>(byte[] bytes)
64
69
public object Deserialize ( byte [ ] bytes , Type type )
65
70
{
66
71
using ( var ms = new MemoryStream ( bytes ) )
67
- using ( var sr = new StreamReader ( ms , Encoding . UTF8 ) )
72
+ using ( var sr = new StreamReader ( ms , s_utf8Encoding ) )
68
73
using ( var jtr = new JsonTextReader ( sr ) )
69
74
{
70
75
return jsonSerializer . Deserialize ( jtr , type ) ;
@@ -81,7 +86,7 @@ public byte[] Serialize<T>(T value)
81
86
{
82
87
using ( var ms = new MemoryStream ( ) )
83
88
{
84
- using ( var sr = new StreamWriter ( ms , Encoding . UTF8 ) )
89
+ using ( var sr = new StreamWriter ( ms , s_utf8Encoding ) )
85
90
using ( var jtr = new JsonTextWriter ( sr ) )
86
91
{
87
92
jsonSerializer . Serialize ( jtr , value ) ;
0 commit comments