diff --git a/src/Squidex/Areas/Api/Config/OpenApi/ErrorDtoProcessor.cs b/src/Squidex/Areas/Api/Config/OpenApi/ErrorDtoProcessor.cs index 8a1dabcc0..15c6322d0 100644 --- a/src/Squidex/Areas/Api/Config/OpenApi/ErrorDtoProcessor.cs +++ b/src/Squidex/Areas/Api/Config/OpenApi/ErrorDtoProcessor.cs @@ -7,6 +7,7 @@ using System; using System.Linq; +using Namotion.Reflection; using NJsonSchema; using NSwag; using NSwag.Generation.Processors; @@ -61,9 +62,9 @@ namespace Squidex.Areas.Api.Config.OpenApi private JsonSchema GetErrorSchema(DocumentProcessorContext context) { - var errorType = typeof(ErrorDto); + var errorType = typeof(ErrorDto).ToContextualType(); - return context.SchemaGenerator.Generate(errorType); + return context.SchemaGenerator.GenerateWithReference(errorType, context.SchemaResolver); } } } diff --git a/src/Squidex/Areas/Api/Controllers/Schemas/Models/CreateSchemaDto.cs b/src/Squidex/Areas/Api/Controllers/Schemas/Models/CreateSchemaDto.cs index 8f969a4bb..fa088af3b 100644 --- a/src/Squidex/Areas/Api/Controllers/Schemas/Models/CreateSchemaDto.cs +++ b/src/Squidex/Areas/Api/Controllers/Schemas/Models/CreateSchemaDto.cs @@ -10,7 +10,7 @@ using Squidex.Domain.Apps.Entities.Schemas.Commands; namespace Squidex.Areas.Api.Controllers.Schemas.Models { - public sealed class CreateSchemaDto : UpsertDto + public sealed class CreateSchemaDto : UpsertSchemaDto { /// /// The name of the schema. diff --git a/src/Squidex/Areas/Api/Controllers/Schemas/Models/SynchronizeSchemaDto.cs b/src/Squidex/Areas/Api/Controllers/Schemas/Models/SynchronizeSchemaDto.cs index e2595140a..07118f2ae 100644 --- a/src/Squidex/Areas/Api/Controllers/Schemas/Models/SynchronizeSchemaDto.cs +++ b/src/Squidex/Areas/Api/Controllers/Schemas/Models/SynchronizeSchemaDto.cs @@ -9,7 +9,7 @@ using Squidex.Domain.Apps.Entities.Schemas.Commands; namespace Squidex.Areas.Api.Controllers.Schemas.Models { - public sealed class SynchronizeSchemaDto : UpsertDto + public sealed class SynchronizeSchemaDto : UpsertSchemaDto { /// /// True, when fields should not be deleted. diff --git a/src/Squidex/Areas/Api/Controllers/Schemas/Models/UpsertDto.cs b/src/Squidex/Areas/Api/Controllers/Schemas/Models/UpsertSchemaDto.cs similarity index 98% rename from src/Squidex/Areas/Api/Controllers/Schemas/Models/UpsertDto.cs rename to src/Squidex/Areas/Api/Controllers/Schemas/Models/UpsertSchemaDto.cs index 7c3032b2e..cd753bc9e 100644 --- a/src/Squidex/Areas/Api/Controllers/Schemas/Models/UpsertDto.cs +++ b/src/Squidex/Areas/Api/Controllers/Schemas/Models/UpsertSchemaDto.cs @@ -12,7 +12,7 @@ using Squidex.Infrastructure.Reflection; namespace Squidex.Areas.Api.Controllers.Schemas.Models { - public abstract class UpsertDto + public abstract class UpsertSchemaDto { /// /// The optional properties. @@ -44,7 +44,7 @@ namespace Squidex.Areas.Api.Controllers.Schemas.Models /// public bool IsPublished { get; set; } - public static TCommand ToCommand(TDto dto, TCommand command) where TCommand : UpsertCommand where TDto : UpsertDto + public static TCommand ToCommand(TDto dto, TCommand command) where TCommand : UpsertCommand where TDto : UpsertSchemaDto { SimpleMapper.Map(dto, command);