コード例 #1
0
        // when registering an unbound target, we also automatically register
        // a projection for the delegate type which is fed by an enumerable of the return
        // type of the delegate.  So IEnumerable<Func<Foo>> <== IEnumerable<Foo>
        void INotifyRegistrationTarget.OnRegistration(IRootTargetContainer root, Type registeredType)
        {
            if (this.BoundTarget == null)
            {
                root.RegisterProjection(ReturnType, registeredType, CreateTarget);
            }

            AutoFactoryTarget CreateTarget(IRootTargetContainer root2, ITarget source) => new AutoFactoryTarget(registeredType, ReturnType, ParameterTypes, source);
        }