Merge pull request #6283 from elsa-workflows/fix/array-wf-type

Refactor array type handling in variable and JSON converters
This commit is contained in:
Sipke Schoorstra 2025-01-10 14:38:54 +01:00 committed by GitHub
commit e395361bfd
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
2 changed files with 2 additions and 2 deletions

View file

@ -36,7 +36,7 @@ public class TypeJsonConverter : JsonConverter<Type>
{
var elementTypeAlias = typeAlias[..^"[]".Length];
var elementType = _wellKnownTypeRegistry.TryGetType(elementTypeAlias, out var t) ? t : Type.GetType(elementTypeAlias)!;
return typeof(List<>).MakeGenericType(elementType);
return elementType.MakeArrayType();
}
return _wellKnownTypeRegistry.TryGetType(typeAlias, out var type) ? type : Type.GetType(typeAlias);

View file

@ -30,7 +30,7 @@ public class VariableDefinitionMapper
if (!_wellKnownTypeRegistry.TryGetTypeOrDefault(source.TypeName, out var type))
return null;
var valueType = source.IsArray ? typeof(ICollection<>).MakeGenericType(type) : type;
var valueType = source.IsArray ? type.MakeArrayType() : type;
var variableGenericType = typeof(Variable<>).MakeGenericType(valueType);
var variable = (Variable)Activator.CreateInstance(variableGenericType)!;