问题标签 [system.text.json]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
2093 浏览

c# - 通过字符串转换反序列化枚举时,如何获得空值而不是序列化错误?

我的一些 API 端点具有包含枚举的模型。FluentValidation 用于验证发送的值是否满足其各自的要求。

为了帮助可用性和文档生成,允许以字符串而不是整数形式发送枚举。如果发送无效整数,则验证发送的值是否在正确范围内可以正常工作,但如果发送无效字符串,则序列化将失败。

我想要的结果是当字符串与枚举的任何字段都不匹配时,简单地将枚举属性反序列化为 null,以便可以将模型传递给验证器以创建友好的消息。

我怎样才能做到这一点?这是使用带有 System.Text.Json API 的 net-core 3 preview 8。

0 投票
1 回答
831 浏览

.net-core-3.0 - Azure 函数 v2 和 system.text.json

我正在尝试实现一个使用 .net core 3(预览版 9)作为目标框架并使用新的 System.text.json 命名空间的函数。这是我的代码:

当我运行代码并将消息提交到服务总线队列时,该函数被触发但失败并出现以下错误:

我得出的结论是,我将不得不将我的项目降级到 .net core 2.2,这将导致相当多的工作,因为我有一个使用新代码库启动并运行的 Web 项目。

0 投票
4 回答
21883 浏览

c# - dotnet core System.Text.Json unescape unicode 字符串

使用JsonSerializer.Serialize(obj)将产生一个转义字符串,但我想要未转义的版本。例如:

会产生一个字符串{"Name":"\u4F60\u597D"},但我想要{"Name":"你好"}

我在https://dotnetfiddle.net/w73vnO创建了一个代码片段,
请帮助我。

0 投票
12 回答
35353 浏览

c# - System.Text.Json 中是否可以进行多态反序列化?

我尝试从 Newtonsoft.Json 迁移到 System.Text.Json。我想反序列化抽象类。Newtonsoft.Json 为此具有 TypeNameHandling。有没有办法通过 .net core 3.0 上的 System.Text.Json 反序列化抽象类?

0 投票
3 回答
43976 浏览

c# - 使用 System.Text.Json 在 ASP.NET Core 3.0 中格式化 DateTime

我正在将 Web API 从 .NET Core 2.2 迁移到 3.0,并希望使用新的System.Text.Json. 使用时,我可以使用下面的代码Newtonsoft进行格式化。DateTime我怎样才能做到这一点?

0 投票
7 回答
29355 浏览

json - 使用新的 Net Core 3.0 Json 时忽略属性

在 ASP.Net Core 2.2 中使用 JSON.Net 时,我能够在序列化为 JSON 时忽略其值为 null 的属性:

但是,当使用 JSON (System.Text.Json) 中内置的新 ASP.Net Core 3.0 时,如果其值为 null,我找不到忽略属性的等效属性。

我只能找到 JsonIgnore。

我错过了什么吗?

0 投票
1 回答
2139 浏览

.net - .NET Core 3 System.Text.Json nested object serialization

Just playing with new System.Text.Json using VS2019 web application template:

Having weather forecast class declaration as:

Example method:

This works ok, returned: {"date":"0001-01-01T00:00:00","temperatureC":0,"temperatureF":32,"summary":null}

But this code:

returns emply json object: {}

How to serialize nested objects?

0 投票
0 回答
581 浏览

json - 将 JSON 实用程序从 Newtonsoft.Json 迁移到 System.Text.Json

我正在尝试将JSON我在库类中的实用NewtonSoft.Json程序从System.Text.Json.

System.Text.Json相当于什么TypeNameHandling?请参阅下面我正在尝试迁移的 utils 方法:

0 投票
4 回答
51512 浏览

c# - System.Text.Json.JsonElement ToObject 解决方法

我想知道ToObject<>()System.Text.Json 的 Json.NET 中的方法的等价物。

使用 Json.NET,您可以使用任何JToken并将其转换为类。例如:

我们如何能够使用 .NET Core 3 的新功能做到这一点System.Text.Json

最初我想我只是将JsonElement返回的字符串转换jDoc.RootElement.GetPRoperty("SomeProperty")为字符串,然后反序列化该字符串。但我觉得这可能不是最有效的方法,而且我真的找不到其他方式的文档。

0 投票
2 回答
8713 浏览

c# - 如何将类字段与 System.Text.Json.JsonSerializer 一起使用?

我最近将一个解决方案升级为全部 .NET Core 3,并且我有一个类要求类变量是字段。这是一个问题,因为 newSystem.Text.Json.JsonSerializer不支持序列化或反序列化字段,而是只处理属性。

有没有办法确保下面示例中的两个最终类具有相同的确切值?