<PackageReference Include="NJsonSchema" Version="9.4.6" />

JsonSchemaGenerator

public class JsonSchemaGenerator
Generates a JsonSchema4 object for a given type.

Gets the settings.

Initializes a new instance of the JsonSchemaGenerator class.

public void ApplyPropertyAnnotations(JsonSchema4 jsonProperty, JsonProperty property, Type parentType, IEnumerable<Attribute> attributes, JsonObjectTypeDescription propertyTypeDescription)

Applies the property annotations to the JSON property.

Generates a JsonSchema4 object for the given type and adds the mapping to the given resolver.

public Task<JsonSchema4> GenerateAsync(Type type, JsonSchemaResolver schemaResolver)

Generates a JsonSchema4 object for the given type and adds the mapping to the given resolver.

public Task<TSchemaType> GenerateAsync<TSchemaType>(Type type, JsonSchemaResolver schemaResolver) where TSchemaType : JsonSchema4

Generates a JsonSchema4 object for the given type and adds the mapping to the given resolver.

public Task<JsonSchema4> GenerateAsync(Type type, IEnumerable<Attribute> parentAttributes, JsonSchemaResolver schemaResolver)

Generates a JsonSchema4 object for the given type and adds the mapping to the given resolver.

public Task<TSchemaType> GenerateAsync<TSchemaType>(Type type, IEnumerable<Attribute> parentAttributes, JsonSchemaResolver schemaResolver) where TSchemaType : JsonSchema4

Generates a JsonSchema4 object for the given type and adds the mapping to the given resolver.

public virtual Task GenerateAsync<TSchemaType>(Type type, IEnumerable<Attribute> parentAttributes, TSchemaType schema, JsonSchemaResolver schemaResolver) where TSchemaType : JsonSchema4

Generates a JsonSchema4 object for the given type and adds the mapping to the given resolver.

protected virtual Task GenerateObjectAsync<TSchemaType>(Type type, JsonContract contract, TSchemaType schema, JsonSchemaResolver schemaResolver) where TSchemaType : JsonSchema4

Generates the properties for the given type and schema.

protected virtual string[] GetTypeProperties(Type type)

Gets the properties of the given type or null to take all properties.