在使用.net core 3.1构建mvc项目练习时发现使用Json返回结果有中文,中文会被编码像这样**{“success”:false,“message”:"\u90AE\u7BB1\u683C\u5F0F\u4E0D\u6B63\u786E"}**,随即构建一个API项目发现也是一样,会被转码;尝试使用ContentResult返回字符串发现没有被转码,使用Newtonsoft.Json序列化对象后使用ContentResult也是正常的,不知道是不是因为.net core 3.1使用System.Text.Json进行序列化的原因;查找获取一个解决方案,记录一下:
services.AddControllersWithViews().AddJsonOptions(options =>
{
options.JsonSerializerOptions.Encoder = JavaScriptEncoder.Create(UnicodeRanges.All);
});
经过测试可用,api和mvc都可以;
版权声明:本文为csdmwinter原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。