/// <summary> /// Gets the correlation id from header , if not found a new is added to the header and returned. /// </summary> /// <returns>Correlation id for request.</returns> public static string GetOrAddCorrelationId(this IHeaderDictionary headers) { if (headers == null) { throw new ArgumentNullException(nameof(headers)); } return(headers.TryGetValue(WellKnownHttpHeaders.CorrelationId, out var header) ? header.FirstOrDefault() : headers.AddCorrelationId(Guid.NewGuid().ToString().ToUpperInvariant())); }