From 48ff06d26e93918fa8f0734e31c7e72d1bfd4fb0 Mon Sep 17 00:00:00 2001 From: Sipke Schoorstra Date: Mon, 22 Mar 2021 21:24:30 +0100 Subject: [PATCH] Add workflow context class type constraint --- .../Elsa.Abstractions/Services/WorkflowContextRefresher.cs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/core/Elsa.Abstractions/Services/WorkflowContextRefresher.cs b/src/core/Elsa.Abstractions/Services/WorkflowContextRefresher.cs index c7643d0d1..388f77f01 100644 --- a/src/core/Elsa.Abstractions/Services/WorkflowContextRefresher.cs +++ b/src/core/Elsa.Abstractions/Services/WorkflowContextRefresher.cs @@ -13,11 +13,11 @@ namespace Elsa.Services public virtual ValueTask LoadAsync(LoadWorkflowContext context, CancellationToken cancellationToken = default) => new(); } - public abstract class WorkflowContextRefresher : ILoadWorkflowContext, ISaveWorkflowContext + public abstract class WorkflowContextRefresher : ILoadWorkflowContext, ISaveWorkflowContext where T:class { public virtual IEnumerable SupportedTypes => new[] { typeof(T) }; ValueTask ISaveWorkflowContext.SaveAsync(SaveWorkflowContext context, CancellationToken cancellationToken) => SaveAsync(new SaveWorkflowContext(context), cancellationToken); - async ValueTask ILoadWorkflowContext.LoadAsync(LoadWorkflowContext context, CancellationToken cancellationToken) => (T)await LoadAsync(context, cancellationToken); + async ValueTask ILoadWorkflowContext.LoadAsync(LoadWorkflowContext context, CancellationToken cancellationToken) => await LoadAsync(context, cancellationToken); public virtual ValueTask SaveAsync(SaveWorkflowContext context, CancellationToken cancellationToken = default) => new(); public virtual ValueTask LoadAsync(LoadWorkflowContext context, CancellationToken cancellationToken) => new(); }