From 88249031205dadf574f22865fc246211dbeaf1c1 Mon Sep 17 00:00:00 2001 From: Dimitar Georgiev Dimitrov Date: Thu, 10 Oct 2024 15:39:57 +0300 Subject: [PATCH] fix(*): enums to appear as strings in swagger schema --- NorthwindCRUD/Filters/EnumSchemaFilter.cs | 9 ++++----- NorthwindCRUD/Helpers/Enums.cs | 3 +++ 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/NorthwindCRUD/Filters/EnumSchemaFilter.cs b/NorthwindCRUD/Filters/EnumSchemaFilter.cs index b0f05cf..60e4251 100644 --- a/NorthwindCRUD/Filters/EnumSchemaFilter.cs +++ b/NorthwindCRUD/Filters/EnumSchemaFilter.cs @@ -10,12 +10,11 @@ public void Apply(OpenApiSchema schema, SchemaFilterContext context) { if (context.Type.IsEnum) { - var enumValues = Enum.GetValues(context.Type) - .Cast() - .Select(e => new OpenApiString(e.ToString())) + schema.Type = "string"; + schema.Enum = context.Type + .GetEnumNames() + .Select(name => new OpenApiString(name)) .ToList(); - - schema.Enum = enumValues; } } } diff --git a/NorthwindCRUD/Helpers/Enums.cs b/NorthwindCRUD/Helpers/Enums.cs index 5116a68..73f5d12 100644 --- a/NorthwindCRUD/Helpers/Enums.cs +++ b/NorthwindCRUD/Helpers/Enums.cs @@ -14,6 +14,9 @@ public enum Shipping [EnumMember(Value = "AirCargo")] AirCargo, + + [EnumMember(Value = "Mail")] + Mail, } } }