private static void WriteJsonSchema(OpenApiSchema schema, IEnumerable <SqlFieldDescription> props, NamingMappingHandler namingMappingHandler) { schema.Type = "object"; var names = namingMappingHandler.GetNames(props.Select(p => p.Name)) .GetEnumerator(); if (schema.Xml == null) { schema.Xml = new OpenApiXml(); } schema.Xml.Name = "tr";//it's always tr foreach (var prop in props) { OpenApiSchema property = new OpenApiSchema(); property.Type = prop.DbType.JsType; if (prop.DbType.JsFormat != null) { property.Format = prop.DbType.JsFormat; } property.Nullable = prop.IsNullable; names.MoveNext(); schema.Properties.Add(names.Current, property); } }
public override OpenApiSchema GetSchema() { OpenApiSchema schema = new OpenApiSchema(); schema.Type = "object"; var names = namingMappingHandler .GetNames(fields.Select(f => f.Name)) .GetEnumerator(); foreach (var prop in fields) { OpenApiSchema property = new OpenApiSchema(); property.Type = prop.DbType.JsType; if (prop.DbType.JsFormat != null) { property.Format = prop.DbType.JsFormat; } property.Nullable = prop.IsNullable; names.MoveNext(); schema.Properties.Add(names.Current, property); } return(schema); }
private static void WriteJsonSchema(OpenApiSchema schema, IEnumerable <OutputParameter> props, NamingMappingHandler namingMappingHandler, bool addRequired, bool forSwagger2) { schema.Type = "object"; var names = namingMappingHandler.GetNames(props.Select(p => p.SqlName)) .GetEnumerator(); if (schema.Xml == null) { schema.Xml = new OpenApiXml(); } schema.Xml.Name = "tr";//it's always tr if (schema.Required == null && addRequired) { schema.Required = new HashSet <string>(); } foreach (var prop in props) { OpenApiSchema property = new OpenApiSchema(); property.Type = prop.DbType.JsType; if (prop.DbType.JsFormat != null) { property.Format = prop.DbType.JsFormat; } property.Nullable = true; if (forSwagger2) { property.AddExtension("x-nullable", new OpenApiBoolean(true)); } names.MoveNext(); schema.Properties.Add(names.Current, property); if (addRequired) { schema.Required !.Add(names.Current); } } }