I think it would be better if `HttpContext.Current.Items` was used to stash a `Dictionary<string, object>` under some specific key. This way, we minimize the chance of interfering with other items that might be present, and - and this is important - we can clean up after the `AmbientTransactionContext` is disposed by removing it again.