Fix Dapper migrations and multiple filter bug

This commit is contained in:
Sipke Schoorstra 2023-09-06 19:24:34 +02:00
parent d7649b0118
commit 2f22396fdf
2 changed files with 10 additions and 2 deletions

View file

@ -28,7 +28,6 @@ public class Initial : Migration
.WithColumn("ActivityTypeName").AsString().NotNullable()
.WithColumn("WorkflowInstanceId").AsString().NotNullable()
.WithColumn("CorrelationId").AsString().Nullable()
.WithColumn("ActivityId").AsString().NotNullable()
.WithColumn("ActivityInstanceId").AsString().NotNullable()
.WithColumn("Hash").AsString().Nullable()
.WithColumn("SerializedPayload").AsString().Nullable()
@ -41,7 +40,6 @@ public class Initial : Migration
.WithColumn("ActivityTypeName").AsString().NotNullable()
.WithColumn("WorkflowInstanceId").AsString().NotNullable()
.WithColumn("CorrelationId").AsString().Nullable()
.WithColumn("ActivityId").AsString().NotNullable()
.WithColumn("ActivityInstanceId").AsString().NotNullable()
.WithColumn("Hash").AsString().Nullable()
.WithColumn("SerializedPayload").AsString().Nullable()

View file

@ -85,6 +85,16 @@ public class DapperWorkflowInboxMessageStore : IWorkflowInboxMessageStore
var clausesSql = string.Join(" OR ", clauses.Select(x => x.Sql.ToString()));
query.Sql.AppendLine(clausesSql);
// Copy all parameters from the clauses to the main query.
foreach (var clause in clauses)
{
foreach (var parameterName in clause.Parameters.ParameterNames)
{
var parameterValue = clause.Parameters.Get<object>(parameterName);
query.Parameters.Add(parameterName, parameterValue);
}
}
}
private IEnumerable<WorkflowInboxMessage> Map(IEnumerable<WorkflowInboxMessageRecord> source) => source.Select(Map);