public static IAspectRegistrationBuilder AddAspectSupport(this IServiceCollection serviceCollection) { var aspectConfigurationProvider = new InMemoryAspectConfigurationProvider(); serviceCollection.TryAddSingleton <IAspectConfigurationProvider>(aspectConfigurationProvider); return(new DispatchProxyAspectRegistrationBuilder(serviceCollection.RegisterAspectFactories(), aspectConfigurationProvider)); }
/// <summary> /// The initialize. /// </summary> public AspectRegistrationTests() { services = new ServiceCollection(); services.AddAspectSupport(); services.AddTransient <ITestInterface, MyTestInterface>(); services.AddLogging(x => { x.AddConsole(); }); IAspectConfigurationProvider aspectConfigurationProvider = new InMemoryAspectConfigurationProvider(); var aspectConfiguration = new AspectConfiguration(new ServiceDescriptor(IInterfaceType, MyTestInterfaceType, ServiceLifetime.Transient)); aspectConfiguration.AddEntry(TestAspectFactory.Type, methodsToIntercept: IInterfaceType.GetMethods()); aspectConfiguration.AddEntry(TestAspectFactory2.Type, methodsToIntercept: IInterfaceType.GetMethods()); aspectConfigurationProvider.AddEntry(aspectConfiguration); services.AddAspectSupport(aspectConfigurationProvider); }
public InMemoryAspectConfigurationProviderTests() { inMemoryAspectConfigurationProvider = new InMemoryAspectConfigurationProvider(); }