public static void RabbitMQTest() { var _container = new AutoFacServiceLocator(); _container.ScanAssemblyAsPerLifetimeScope <TestConsumer1>(); _container.Map <IExceptionProcess, ExceptionProcess>(); RegisterModule.Register(_container); _container.UseAsDefault(true); var config = new RabbitMQConfig { Host = "localhost:/mis", Username = "******", Password = "******" }; //_container.BusOnRabbitMq(config, x => x.SubscribeAt(config.Host, new DefaultConsumeConfigurator(_container))); _container.BusOnRabbitMq(config, x => x.PublishAt(config.Host, new DefaultConsumeConfigurator(_container))); var publisher = ServiceLocator.Current.GetInstance <IEventPublisher>(); publisher.Publish <RabbitTestEvent1>(new RabbitTestEvent1 { UserId = 2, UserName = Guid.NewGuid().ToString() }, "mis"); while (true) { publisher.Publish <RabbitTestEvent>(new RabbitTestEvent { UserId = 2, UserName = Guid.NewGuid().ToString() }); publisher.Publish <RabbitTestEvent2>(new RabbitTestEvent2 { UserId = 3, UserName = Guid.NewGuid().ToString() }); } }
public static void Publish() { var locator = new AutoFacServiceLocator(); locator.Map <IDiagnosticProcessor, StoreDiagnosticSubscription>(null, true); locator.Map <IObserver <DiagnosticListener>, DiagnosticListenerObserver>(null, true); locator.UseAsDefault(true); var observer = ServiceLocator.Current.GetInstance <IObserver <DiagnosticListener> >(); DiagnosticListener.AllListeners.Subscribe(observer); var listener = new DiagnosticListener(EventName.ListenerName); if (listener.IsEnabled(EventName.BeforeEventName)) { listener.Write(EventName.BeforeEventName, new EventData { Name = "huang" }); } if (listener.IsEnabled(EventName.AfterEventName)) { listener.Write(EventName.AfterEventName, new EventData { Name = "huang" }); } }
public static void Test() { var locator = new AutoFacServiceLocator(); locator.Map <IAA, AA>(typeof(IInterceptor).Name); locator.Map <IInterceptor, InvokeManagerInterceptor>(); locator.UseAsDefault(true); var result = locator.GetInstance <IAA>().GetName(); }
public static void AutoFacTest() { //如果需要进行AOP拦截的话则需要按照Autofac.Extras.DynamicProxy类库,实现IInterceptor接口 var locator = new AutoFacServiceLocator(); locator.ScanAssembly <IocTest>(); //locator.Map<IB, B>("B"); //locator.Map<IB, D>("D"); //locator.Map<IB, D>(); locator.UseAsDefault(true); //locator.GetInstance<IB>("B").Write(); var instances = locator.GetAllInstance <IB>(); var A = ServiceLocator.Current.GetInstance <IB>(); A.Write(); foreach (var instance in instances) { instance.Write(); } }