From 70530aa9fea90758b3dffd4e34b265203e71dbde Mon Sep 17 00:00:00 2001 From: Sipke Schoorstra Date: Sat, 6 Jan 2024 14:44:31 +0100 Subject: [PATCH] Add decimal check in PolymorphicObjectConverter In the PolymorphicObjectConverter class, the check for primitive types and specific object types was updated to include decimal. Fixes #4714 --- .../Serialization/Converters/PolymorphicObjectConverter.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/modules/Elsa.Workflows.Core/Serialization/Converters/PolymorphicObjectConverter.cs b/src/modules/Elsa.Workflows.Core/Serialization/Converters/PolymorphicObjectConverter.cs index 72d2c3183..0cc00867a 100644 --- a/src/modules/Elsa.Workflows.Core/Serialization/Converters/PolymorphicObjectConverter.cs +++ b/src/modules/Elsa.Workflows.Core/Serialization/Converters/PolymorphicObjectConverter.cs @@ -158,7 +158,7 @@ public class PolymorphicObjectConverter : JsonConverter var newOptions = new JsonSerializerOptions(options); var type = value.GetType(); - if (type.IsPrimitive || value is string or DateTimeOffset or DateTime or DateOnly or TimeOnly or JsonElement or Guid or TimeSpan or Uri or Version or Enum) + if (type.IsPrimitive || value is string or decimal or DateTimeOffset or DateTime or DateOnly or TimeOnly or JsonElement or Guid or TimeSpan or Uri or Version or Enum) { // Remove the converter so that we don't end up in an infinite loop. newOptions.Converters.RemoveWhere(x => x is PolymorphicObjectConverterFactory);