From 9eaac69f14e631ec4a81bfbdd2c7d6fc45c7b567 Mon Sep 17 00:00:00 2001 From: Marty Tippin <120425148+tippmar-nr@users.noreply.github.com> Date: Fri, 14 Jul 2023 15:30:17 -0500 Subject: [PATCH] Update CoreContainer to start a new lifetime scope from the existing scope rather than from the container. --- .../NewRelic/Agent/Core/DependencyInjection/CoreContainer.cs | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/Agent/NewRelic/Agent/Core/DependencyInjection/CoreContainer.cs b/src/Agent/NewRelic/Agent/Core/DependencyInjection/CoreContainer.cs index 537c991ef..b59e9484b 100644 --- a/src/Agent/NewRelic/Agent/Core/DependencyInjection/CoreContainer.cs +++ b/src/Agent/NewRelic/Agent/Core/DependencyInjection/CoreContainer.cs @@ -36,9 +36,10 @@ public void Build() public void ReplaceRegistrations() { - scope.Dispose(); // dump the existing scope + // create a new nested scope, registering the requested replacement instances + scope = scope.BeginLifetimeScope(ReplaceRegistrations); - scope = this.container.BeginLifetimeScope(ReplaceRegistrations); // create a new scope, registering all replacement instances + _registrationsToReplace.Clear(); } private void ReplaceRegistrations(ContainerBuilder builder)