Json.NET(4.5.11)的最新版本包含StringEscapeHandling.EscapeNonAscii,它转义了所有非ASCII字符。但是,我不知道如何使用它。这些文档似乎没有任何我可以找到的示例(只有发布它的发行说明)。
StringEscapeHandling.EscapeNonAscii
有人可以显示一个使用序列化对象为JSON字符串的示例EscapeNonAscii吗?
EscapeNonAscii
也许这个例子可以帮助
string obj = "abcn\n\rüö&/<>"; Console.WriteLine(Serialize(obj, StringEscapeHandling.Default)); Console.WriteLine(Serialize(obj, StringEscapeHandling.EscapeHtml)); Console.WriteLine(Serialize(obj, StringEscapeHandling.EscapeNonAscii));
public static string Serialize(object o,StringEscapeHandling stringEscapeHandling) { StringWriter wr = new StringWriter(); var jsonWriter = new JsonTextWriter(wr); jsonWriter.StringEscapeHandling = stringEscapeHandling; new JsonSerializer().Serialize(jsonWriter,o); return wr.ToString(); }