最新版本的Json.NET(4.5.11)包含StringEscapeHandling.EscapeNonAscii,它可以转义所有非ASCII字符。但是,我无法弄清楚将它作为参数传递到何处。
如果我尝试:
JsonConvert.SerializeObject(myObj, Formatting.Indented, new JsonSerializerSettings { StringEscapeHandling = StringEscapeHandling.EscapeNonAscii});
然后我得到编译错误:
'Newtonsoft.Json.JsonSerializerSettings' does not contain a definition for 'StringEscapeHandling'
基于the documentation,此属性仅适用于JsonWriter及其继承者。
在更新版本的Newtonsoft.Json上,这可以在JsonConvert.SerializeObject()
上找到。通过一个JsonSerializerSettings
实例,其中StringEscapeHandling
是StringEscapeHandling.EscapeNonAscii
。