diff --git a/src/modules/Elsa.Expressions/Helpers/ObjectConverter.cs b/src/modules/Elsa.Expressions/Helpers/ObjectConverter.cs index 571397bee..a66d344e6 100644 --- a/src/modules/Elsa.Expressions/Helpers/ObjectConverter.cs +++ b/src/modules/Elsa.Expressions/Helpers/ObjectConverter.cs @@ -112,7 +112,13 @@ public static class ObjectConverter if (underlyingSourceType == typeof(string) && !underlyingTargetType.IsPrimitive && underlyingTargetType != typeof(object)) { var stringValue = (string)value; - + + if (underlyingTargetType == typeof(byte[])) + { + // Byte arrays are serialized to base64, so in this case, we convert the string back to the requested target type of byte[]. + return Convert.FromBase64String(stringValue); + } + try { var firstChar = stringValue.TrimStart().FirstOrDefault(); diff --git a/src/modules/Elsa.Scheduling/Activities/Delay.cs b/src/modules/Elsa.Scheduling/Activities/Delay.cs index 1c56d11ee..63981e03d 100644 --- a/src/modules/Elsa.Scheduling/Activities/Delay.cs +++ b/src/modules/Elsa.Scheduling/Activities/Delay.cs @@ -78,7 +78,7 @@ public class Delay : Activity, IActivityPropertyDefaultValueProvider var resumeAt = clock.UtcNow.Add(timeSpan); var payload = new DelayPayload(resumeAt); - context.JournalData.Add("ResumeAt", resumeAt); + context.JournalData["ResumeAt"] = resumeAt; context.CreateBookmark(payload); }