添加链接
link之家
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接

JsonSerializer.Serialize自动会对非Ascii字符进行转义,变成诸如"\u5468"之类的东西,对网页应用比较友好,当我们不需这个转义的时候,必须设置JsonSerializerOptions如下:

var options = new JsonSerializerOptions
      Encoder = JavaScriptEncoder.Create(UnicodeRanges.CjkUnifiedIdeographs,UnicodeRanges.CjkUnifiedIdeographsExtensionA),
JsonSerializer.Serialize(obj,options);
                        原文链接:https://www.colorgg.com
                                    在使用 System.Text.Json.JsonSerializer.Serialize 方法将对象转换成 JSON 格式时,会自动进行 Unicode 编码,这是 JSON 格式的规定。接着,将该 JsonSerializerOptions 对象设置为全局默认值即可,这样就能够全局解决 System.Text.Json.JsonSerializer.Serialize 对中文进行 Unicode 转义的问题。这样就可以将 JSON 字符串中的 Unicode 编码还原成中文字符进行显示。
                                    项目场景:
.net core 3.1、.net core 3.0
json中文字符被转换成 “\u20EE\u5BB1\u62WC\u6F0F\u1E8D\u6B6B\u72EE” 这种编码。
解决方案:
在Startup类中ConfigureServices方法添加以下代码:
public void ConfigureServices(IServiceCollection services)
	services.AddControllersWithViews().AddJsonOptions(o
                                    本文比较完整地整理一下 JSON 编码中的转义,以及 JSON 对 Unicode 编码的处理。其实这是我上一篇文章的姊妹篇。在研究 Unicode 颜文字的时候,由于我们的数据传输是通过 JSON 串来完成的,在对颜文字进行转码传输的过程中,也发现了一个问题。解决问题之后,便有了本总结文。JSON 中的普通转义字符个人认为,JSON 是目前针对程序员而言可读性(readability)最佳的数据...
                                    在使用.net core 3.1构建mvc项目练习时发现使用Json返回结果有中文中文会被编码像这样**{"success":false,"message":"\u90AE\u7BB1\u683C\u5F0F\u4E0D\u6B63\u786E"}**,随即构建一个API项目发现也是一样,会被转码;尝试使用ContentResult返回字符串发现没有被转码,使用Newtonsoft.Json序...
services.AddControllers().AddJsonOptions(options =>
                options.JsonSerializerOptions.Encoder = System.Text.Encodings.Web.JavaScriptEncoder.Create(UnicodeRanges.All);