示例#1
0
 private static void ResolveOperationOnInstanceLookupBeginning(
     object sender
     , InstanceLookupBeginningEventArgs e
     )
 {
     Logger.Info($"{nameof ( ResolveOperationOnInstanceLookupBeginning )}");
 }
示例#2
0
        private static void InstanceLookupBeginning(object sender, InstanceLookupBeginningEventArgs e)
        {
            var registration    = e.InstanceLookup.ComponentRegistration;
            var activationScope = e.InstanceLookup.ActivationScope;

            object value;
            var    preventChecking = registration.Target.Metadata.TryGetValue("AllowRootLifetimeScope", out value) && (bool)value;

            if (preventChecking)
            {
                return;
            }

            if (registration.Ownership != InstanceOwnership.ExternallyOwned &&
                registration.Sharing == InstanceSharing.Shared &&
                !(registration.Lifetime is RootScopeLifetime) &&
                activationScope.Tag.Equals("root"))
            {
                //would be really nice to be able to get a resolution stack here
                throw new DependencyResolutionException(string.Format(
                                                            "Cannot resolve a lifetime instance of {0} at the root scope.", registration.Target));
            }
        }
 private static void InstanceLookupBeginning(object sender, InstanceLookupBeginningEventArgs e)
 {
     e.InstanceLookup.ComponentRegistration.Activating += ActivatingComponent;
 }
 private static void InstanceLookupBeginning(object sender, InstanceLookupBeginningEventArgs e)
 {
     e.InstanceLookup.ComponentRegistration.Activating += ActivatingComponent;
 }