-
Notifications
You must be signed in to change notification settings - Fork 10.4k
Closed
Labels
area-minimalIncludes minimal APIs, endpoint filters, parameter binding, request delegate generator etcIncludes minimal APIs, endpoint filters, parameter binding, request delegate generator etcarea-mvcIncludes: MVC, Actions and Controllers, Localization, CORS, most templatesIncludes: MVC, Actions and Controllers, Localization, CORS, most templatesfeature-openapi
Milestone
Description
Based on feedback from #58968 (comment) and #58968 (comment).
We need to resolve the bug for schema comparisons around the following type hierarchy:
// List<LocationContainer>
{
"type": "array",
"items": {
"type": "object",
"properties": {
"location": {
"type": [
"object",
"null"
],
"properties": {
"address": {
"type": [
"object",
"null"
],
"properties": {
"relatedLocation": {
"type": [
"object",
"null"
],
"properties": {
"address": {
"$ref": "#/items/properties/location/properties/address",
"x-schema-id": "AddressDto",
"nullable": true
}
},
"x-schema-id": "LocationDto",
"nullable": true
}
},
"x-schema-id": "AddressDto",
"nullable": true
}
},
"x-schema-id": "LocationDto",
"nullable": true
}
},
"x-schema-id": "LocationContainer"
}
}
// LocationContainer[]
{
"type": "array",
"items": {
"type": "object",
"properties": {
"location": {
"type": [
"object",
"null"
],
"properties": {
"address": {
"type": [
"object",
"null"
],
"properties": {
"relatedLocation": {
"type": [
"object",
"null"
],
"properties": {
"address": {
"$ref": "#/items/properties/location/properties/address",
"x-schema-id": "AddressDto",
"nullable": true
}
},
"x-schema-id": "LocationDto",
"nullable": true
}
},
"x-schema-id": "AddressDto",
"nullable": true
}
},
"x-schema-id": "LocationDto",
"nullable": true
}
},
"x-schema-id": "LocationContainer"
}
}
// Dictionary<string, LocationContainer>
{
"type": "object",
"additionalProperties": {
"type": "object",
"properties": {
"location": {
"type": [
"object",
"null"
],
"properties": {
"address": {
"type": [
"object",
"null"
],
"properties": {
"relatedLocation": {
"type": [
"object",
"null"
],
"properties": {
"address": {
"$ref": "#/additionalProperties/properties/location/properties/address",
"x-schema-id": "AddressDto",
"nullable": true
}
},
"x-schema-id": "LocationDto",
"nullable": true
}
},
"x-schema-id": "AddressDto",
"nullable": true
}
},
"x-schema-id": "LocationDto",
"nullable": true
}
},
"x-schema-id": "LocationContainer"
}
}
// ListContainer
{
"type": "object",
"properties": {
"location": {
"type": [
"object",
"null"
],
"properties": {
"address": {
"type": [
"object",
"null"
],
"properties": {
"relatedLocation": {
"type": [
"object",
"null"
],
"properties": {
"address": {
"$ref": "#/properties/location/properties/address",
"x-schema-id": "AddressDto",
"nullable": true
}
},
"x-schema-id": "LocationDto",
"nullable": true
}
},
"x-schema-id": "AddressDto",
"nullable": true
}
},
"x-schema-id": "LocationDto",
"nullable": true
}
},
"x-schema-id": "LocationContainer"
}
swimmesberger
Metadata
Metadata
Assignees
Labels
area-minimalIncludes minimal APIs, endpoint filters, parameter binding, request delegate generator etcIncludes minimal APIs, endpoint filters, parameter binding, request delegate generator etcarea-mvcIncludes: MVC, Actions and Controllers, Localization, CORS, most templatesIncludes: MVC, Actions and Controllers, Localization, CORS, most templatesfeature-openapi
Type
Projects
Status
Done