【发布时间】:2020-02-14 23:57:11
【问题描述】:
我已经梳理了MS docs,但找不到与NewtonSoft JsonPropertyRequired 等效的属性。
我正在寻找的是这个:
public class Videogame
{
[JsonProperty(Required = Required.Always)]
public string Name { get; set; }
}
我只是遗漏了什么,还是 Microsoft 库中不存在这种级别的验证?
【问题讨论】:
-
有很多我们习惯的功能不是内置的。在这里查看我的答案stackoverflow.com/a/58440545/5233410 以获取替代方法
-
@Nkosi 谢谢,我已经为我服务了,因为几周前我不得不匆忙编写一个自定义转换器。我只是重新审视我最初的解决方案,希望在项目开始时采用 MS 方式。一旦它被投入生产,它就不太可能出来了。
-
一种可能的方法是使用
JsonConverter,如this comment 到Support for custom converters and OnXXX callbacks #36639 by steveharter 所示。该评论使用JsonConverter为缺少OnDeserialized事件提供了一种解决方法;您可以使用那里的技巧将验证添加到转换器中。 -
@dbc - 嗯,不,写和维护另一段代码不是答案,使用具有功能的库是。
标签: c# .net-core json.net system.text.json