diff --git a/src/ServiceControl.Audit/Auditing/AuditIngestor.cs b/src/ServiceControl.Audit/Auditing/AuditIngestor.cs index 84d110a1f2..9668e9943a 100644 --- a/src/ServiceControl.Audit/Auditing/AuditIngestor.cs +++ b/src/ServiceControl.Audit/Auditing/AuditIngestor.cs @@ -97,8 +97,7 @@ public async Task Ingest(List contexts) Task Forward(IReadOnlyCollection messageContexts, string forwardingAddress) { - var transportOperations = new TransportOperation[messageContexts.Count]; //We could allocate based on the actual number of ProcessedMessages but this should be OK - var index = 0; + var transportOperations = new List(messageContexts.Count); MessageContext anyContext = null; foreach (var messageContext in messageContexts) { @@ -117,13 +116,12 @@ Task Forward(IReadOnlyCollection messageContexts, string forward // Forwarded messages should last as long as possible outgoingMessage.Headers.Remove(Headers.TimeToBeReceived); - transportOperations[index] = new TransportOperation(outgoingMessage, new UnicastAddressTag(forwardingAddress)); - index++; + transportOperations.Add(new TransportOperation(outgoingMessage, new UnicastAddressTag(forwardingAddress))); } return anyContext != null ? messageDispatcher.Value.Dispatch( - new TransportOperations(transportOperations), + new TransportOperations([.. transportOperations]), anyContext.TransportTransaction ) : Task.CompletedTask; @@ -162,4 +160,4 @@ public async Task VerifyCanReachForwardingAddress() static readonly long FrequencyInMilliseconds = Stopwatch.Frequency / 1000; static readonly ILog Log = LogManager.GetLogger(); } -} \ No newline at end of file +}