public VirtualMethodProxyGenerator(IMethodInvokerBuilder methodInvokerBuilder, IEnumerable <IInterceptorProvider> interceptorProviders) : base(interceptorProviders) { _methodInvokerBuilder = methodInvokerBuilder ?? throw new ArgumentNullException(nameof(methodInvokerBuilder)); }
public InterfaceProxyGenerator(IMethodInvokerBuilder methodInvokerBuilder, IServiceProvider serviceProvider, IEnumerable <IInterceptorProvider> interceptorProviders) : base(interceptorProviders) { _methodInvokerBuilder = methodInvokerBuilder ?? throw new ArgumentNullException(nameof(methodInvokerBuilder)); _virtualMethodProxyGeneratorAccessor = new Lazy <IVirtualMethodProxyGenerator>(() => serviceProvider.GetServices <ICodeGenerator>().OfType <IVirtualMethodProxyGenerator>().Single()); }