对于什么是 JsonObjectAttribute.Id



JSON.NET JsonObjectAttribute 具有属性Id 。它继承自JsonContainerAttribute.我找不到,因为Id属性是什么?

Json.NET 架构使用它在为类型生成架构时重写默认的 "$id" 属性值。

例如,如果我有以下类型:

[JsonObject(Id = "http://foo.bar/schemas/rootobject.json")]
public class RootObject { }

并使用JSchemaGenerator自动生成架构,如下所示:

var schema = new JSchemaGenerator().Generate(typeof(RootObject)).ToString();

结果是(演示小提琴在这里):

{
  "$id": "http://foo.bar/schemas/rootobject.json",
  "type": "object"
}

如果未重写,则 "$id" 的值由SchemaIdGenerationHandling枚举控制。

根据JamesNK的说法,它也被过时的JsonSchemaGenerator使用:

它被JsonSchemaGenerator使用,但已被弃用。

相关内容

  • 没有找到相关文章

最新更新