首页 > 解决方案 > System.Text.Json.JsonSerializer.Serialize 将返回字符串括在双引号中

问题描述

System.Text.Json.JsonSerializer.Serialize用双引号将返回字符串括起来。

我想我可以从返回字符串中删除第一个和最后一个字符,但想知道这样做的目的是什么。

我可以让序列化程序默认排除它们吗?

string linkCipherString = JsonSerializer.Serialize<byte[]>(linkCipherBytes);

标签: jsonasp.net-coreserialization

解决方案


JsonSerializer.Serialize<T>(object)将生成如下所示的 json 字符串:

"{\"Id\":1,\"Name\":\"aaa\"}"

字符串文字是字符串类型,可以用两种形式编写,带引号和带引号@。这是 C# 设计的,您无法更改它。您只能删除字符串数据中的双引号,例如\".

https://docs.microsoft.com/en-us/dotnet/csharp/language-reference/builtin-types/reference-types#the-string-type


推荐阅读