From dc2def3ad9887a89ca161effe0d127cebf27182d Mon Sep 17 00:00:00 2001 From: Lars Nijholt Date: Tue, 7 Jan 2025 15:43:56 +0100 Subject: [PATCH] Add string comparison for searching definitions case insensitively to EfCoreWorkflowDefinitionStore --- .../Modules/Management/WorkflowDefinitionStore.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/modules/Elsa.EntityFrameworkCore/Modules/Management/WorkflowDefinitionStore.cs b/src/modules/Elsa.EntityFrameworkCore/Modules/Management/WorkflowDefinitionStore.cs index 02e5286c1..226bb40e9 100644 --- a/src/modules/Elsa.EntityFrameworkCore/Modules/Management/WorkflowDefinitionStore.cs +++ b/src/modules/Elsa.EntityFrameworkCore/Modules/Management/WorkflowDefinitionStore.cs @@ -206,7 +206,7 @@ public class EFCoreWorkflowDefinitionStore(EntityStore x.Name == filter.Name); if (filter.Names != null) queryable = queryable.Where(x => filter.Names.Contains(x.Name!)); if (filter.UsableAsActivity != null) queryable = queryable.Where(x => EF.Property(x, "UsableAsActivity") == filter.UsableAsActivity); - if (!string.IsNullOrWhiteSpace(filter.SearchTerm)) queryable = queryable.Where(x => x.Name!.Contains(filter.SearchTerm) || x.Description!.Contains(filter.SearchTerm) || x.Id.Contains(filter.SearchTerm) || x.DefinitionId.Contains(filter.SearchTerm)); + if (!string.IsNullOrWhiteSpace(filter.SearchTerm)) queryable = queryable.Where(x => x.Name!.ToLower().Contains(filter.SearchTerm.ToLower()) || x.Description!.ToLower().Contains(filter.SearchTerm.ToLower()) || x.Id.Contains(filter.SearchTerm) || x.DefinitionId.Contains(filter.SearchTerm)); // TEMP: IsSystem may be null when upgrading from older versions of Elsa to 3.2. See issue #5366. // In a future version, we should remove this check and simply do queryable.Where(x => x.IsSystem == filter.IsSystem).