public override void PreInitialize <TTenantId, TUserId>() { IocManager.AddConventionalRegistrar(new BasicConventionalRegistrar()); ValidationInterceptorRegistrar.Initialize(IocManager); //TODO: Consider to change order of Uow and Auth interceptors..? UnitOfWorkRegistrar.Initialize <TTenantId, TUserId>(IocManager); AuthorizationInterceptorRegistrar <TTenantId, TUserId> .Initialize(IocManager); _auditingInterceptorRegistrar = new AuditingInterceptorRegistrar(IocManager.Resolve <IAuditingConfiguration>(), IocManager); _auditingInterceptorRegistrar.Initialize <TTenantId, TUserId>(); Configuration.Auditing.Selectors.Add( new NamedTypeSelector( "Abp.ApplicationServices", type => typeof(IApplicationService).IsAssignableFrom(type) ) ); Configuration.Localization.Sources.Add( new DictionaryBasedLocalizationSource( AbpConsts.LocalizationSourceName, new XmlEmbeddedFileLocalizationDictionaryProvider( Assembly.GetExecutingAssembly(), "Abp.Localization.Sources.AbpXmlSource" ))); Configuration.Settings.Providers.Add <EmailSettingProvider>(); Configuration.UnitOfWork.RegisterFilter(AbpDataFilters.SoftDelete, true); Configuration.UnitOfWork.RegisterFilter(AbpDataFilters.MustHaveTenant, true); Configuration.UnitOfWork.RegisterFilter(AbpDataFilters.MayHaveTenant, true); }
public override void PreInitialize() { IocManager.AddConventionalRegistrar(new BasicConventionalRegistrar()); ValidationInterceptorRegistrar.Initialize(IocManager); //TODO: Consider to change order of Uow and Auth interceptors..? UnitOfWorkRegistrar.Initialize(IocManager); AuthorizationInterceptorRegistrar.Initialize(IocManager); _auditingInterceptorRegistrar = new AuditingInterceptorRegistrar(IocManager.Resolve <IAuditingConfiguration>(), IocManager); _auditingInterceptorRegistrar.Initialize(); Configuration.Auditing.Selectors.Add( new NamedTypeSelector( "Abp.ApplicationServices", type => typeof(IApplicationService).IsAssignableFrom(type) ) ); Configuration.Settings.Providers.Add <EmailSettingProvider>(); Configuration.UnitOfWork.RegisterFilter(AbpDataFilters.SoftDelete, true); Configuration.UnitOfWork.RegisterFilter(AbpDataFilters.MustHaveTenant, true); Configuration.UnitOfWork.RegisterFilter(AbpDataFilters.MayHaveTenant, true); }
/// <summary> /// 注册拦截器 /// </summary> private void AddInterceptorRegistrars() { //ValidationInterceptorRegistrar.Initialize(IocManager); //AuditingInterceptorRegistrar.Initialize(IocManager); UnitOfWorkRegistrar.Initialize(IocManager); //AuthorizationInterceptorRegistrar.Initialize(IocManager); }
public override void PreInitialize() { IocManager.AddConventionalRegistrar(new BasicConventionalRegistrar()); CacheRegistrar.Initialize(IocManager); UnitOfWorkRegistrar.Initialize(IocManager); Configuration.UnitOfWork.RegisterFilter(DataFilters.SoftDelete, true); }
private void InitializeInterceptors() { ValidationInterceptorRegistrar.Initialize(this.IocManager); AuditingInterceptorRegistrar.Initialize(this.IocManager); UnitOfWorkRegistrar.Initialize(this.IocManager); AuthorizationInterceptorRegistrar.Initialize(this.IocManager); }
public virtual void Initialize() { IocManager.IocContainer.Install(new OwnCoreInstaller()); //领域事件的注册必须在其他的注册之前,这样才能够扫描所有的注册的类,并找到实现的IEventHandler的事件进行注册 IocManager.IocContainer.Install(new EventBusInstaller(IocManager)); UnitOfWorkRegistrar.Initialize(IocManager); ValidationInterceptorRegistrar.Initialize(IocManager); if (ConventionalRegistrarConfig.RegistrarForInterface) { IocManager.AddConventionalRegistrar(new BasicConventionalRegistrar()); } if (ConventionalRegistrarConfig.Assembly == null) { var assemblies = ConventionalRegistrarConfig.IsWebApp ? BuildManager.GetReferencedAssemblies().Cast <Assembly>() : AppDomain.CurrentDomain.GetAssemblies(); assemblies = FilterSystemAssembly(assemblies); foreach (var assemblie in assemblies) { IocManager.RegisterAssemblyByConvention(assemblie); } } else { IocManager.RegisterAssemblyByConvention(ConventionalRegistrarConfig.Assembly); } }
public override void PreInitialize() { IocManager.AddConventionalRegistrar(new BasicConventionalRegistrar()); ValidationInterceptorRegistrar.Initialize(IocManager); FeatureInterceptorRegistrar.Initialize(IocManager); AuditingInterceptorRegistrar.Initialize(IocManager); UnitOfWorkRegistrar.Initialize(IocManager); AuthorizationInterceptorRegistrar.Initialize(IocManager); Configuration.Auditing.Selectors.Add( new NamedTypeSelector( "Abp.ApplicationServices", type => typeof(IApplicationService).IsAssignableFrom(type) ) ); Configuration.Localization.Sources.Add( new DictionaryBasedLocalizationSource( AbpConsts.LocalizationSourceName, new XmlEmbeddedFileLocalizationDictionaryProvider( Assembly.GetExecutingAssembly(), "Abp.Localization.Sources.AbpXmlSource" ))); Configuration.Settings.Providers.Add <LocalizationSettingProvider>(); Configuration.Settings.Providers.Add <EmailSettingProvider>(); Configuration.Settings.Providers.Add <NotificationSettingProvider>(); Configuration.Settings.Providers.Add <TimingSettingProvider>(); Configuration.UnitOfWork.RegisterFilter(AbpDataFilters.SoftDelete, true); Configuration.UnitOfWork.RegisterFilter(AbpDataFilters.MustHaveTenant, true); Configuration.UnitOfWork.RegisterFilter(AbpDataFilters.MayHaveTenant, true); ConfigureCaches(); }
public override void PreInitialize() { IocManager.AddConventionalRegistrar(new BasicConventionalRegistrar()); UnitOfWorkRegistrar.Initialize(IocManager); ApplicationServiceInterceptorRegistrar.Initialize(IocManager); Configuration.Settings.Providers.Add <EmailSettingProvider>(); }
private void AddInterceptorRegistrars( AbpBootstrapperInterceptorOptions options) { if (!options.DisableValidationInterceptor) { ValidationInterceptorRegistrar.Initialize(IocManager); } if (!options.DisableAuditingInterceptor) { AuditingInterceptorRegistrar.Initialize(IocManager); } if (!options.DisableEntityHistoryInterceptor) { EntityHistoryInterceptorRegistrar.Initialize(IocManager); } if (!options.DisableUnitOfWorkInterceptor) { UnitOfWorkRegistrar.Initialize(IocManager); } if (!options.DisableAuthorizationInterceptor) { AuthorizationInterceptorRegistrar.Initialize(IocManager); } }
private void AddInterceptorRegistrars() { ValidationInterceptorRegistrar.Initialize(IocManager); AuditingInterceptorRegistrar.Initialize(IocManager); EntityHistoryInterceptorRegistrar.Initialize(IocManager); UnitOfWorkRegistrar.Initialize(IocManager); AuthorizationInterceptorRegistrar.Initialize(IocManager); }
public override void PreInitialize() { IocManager.AddConventionalRegistrar(new BasicConventionalRegistrar()); IocManager.Register <IScopedIocResolver, ScopedIocResolver>(DependencyLifeStyle.Transient); IocManager.Register(typeof(IAmbientScopeProvider <>), typeof(DataContextAmbientScopeProvider <>), DependencyLifeStyle.Transient); UnitOfWorkRegistrar.Initialize(IocManager); AuthorizationInterceptorRegistrar.Initialize(IocManager); AddIgnoredTypes(); base.PreInitialize(); }
/// <summary> /// 这是应用启动调用的第一个事件,这里面的代码,会在依赖注入注册之前运行 /// </summary> public override void PreInitialize() { //注册基本的约定注册器 IocManager.AddConventionalRegistrar(new BasicConventionalRegistrar()); //注册IScopedIocResolver IocManager.Register <IScopedIocResolver, ScopedIocResolver>(DependencyLifeStyle.Transient); //初始化验证拦截器 ValidationInterceptorRegistrar.Initialize(IocManager); //初始化审计拦截器 AuditingInterceptorRegistrar.Initialize(IocManager); //工作单元拦截器初始化 UnitOfWorkRegistrar.Initialize(IocManager); //授权拦截器拦截器 AuthorizationInterceptorRegistrar.Initialize(IocManager); //添加审计的选择器 Configuration.Auditing.Selectors.Add( //应用服务(IApplicationService)需要记录审计日志 new NamedTypeSelector( "Abp.ApplicationServices", type => typeof(IApplicationService).IsAssignableFrom(type) ) ); Configuration.Localization.Sources.Add( new DictionaryBasedLocalizationSource( AbpConsts.LocalizationSourceName, new XmlEmbeddedFileLocalizationDictionaryProvider( Assembly.GetExecutingAssembly(), "Abp.Localization.Sources.AbpXmlSource" ))); //添加本地化源 Configuration.Settings.Providers.Add <LocalizationSettingProvider>(); //添加邮件设置服务 Configuration.Settings.Providers.Add <EmailSettingProvider>(); Configuration.Settings.Providers.Add <NotificationSettingProvider>(); Configuration.Settings.Providers.Add <TimingSettingProvider>(); Configuration.UnitOfWork.RegisterFilter(AbpDataFilters.SoftDelete, true); Configuration.UnitOfWork.RegisterFilter(AbpDataFilters.MustHaveTenant, true); Configuration.UnitOfWork.RegisterFilter(AbpDataFilters.MayHaveTenant, true); ConfigureCaches(); AddIgnoredTypes(); }
/// <summary> /// First place of program start. /// </summary> /// <param name="eventArgs"> /// Bootstrap of program. /// </param> protected override void OnStartup(StartupEventArgs eventArgs) { IocManager.Instance.AddConventionalRegistrar(new BasicConventionalRegistrar()); UnitOfWorkRegistrar.Initialize(IocManager.Instance); IocManager.Instance.RegisterAssemblyByConvention(Assembly.Load("DynamicTranslator.Core")); IocManager.Instance.RegisterAssemblyByConvention(Assembly.Load("DynamicTranslator")); IocManager.Instance.Register <IGrowlNotifications, GrowlNotifiactions>(); var defaultSlidingExpireTime = TimeSpan.FromHours(24); IocManager.Instance.Resolve <ICachingConfiguration>().ConfigureAll(cache => { cache.DefaultSlidingExpireTime = defaultSlidingExpireTime; }); var configurations = IocManager.Instance.Resolve <IStartupConfiguration>(); configurations.Initialize(); base.OnStartup(eventArgs); }
public virtual void Initialize() { UnitOfWorkRegistrar.Initialize(IocManager); ValidationInterceptorRegistrar.Initialize(IocManager); if (ConventionalRegistrarConfig.RegistrarForInterface) { IocManager.AddConventionalRegistrar(new BasicConventionalRegistrar()); } if (ConventionalRegistrarConfig.Assembly == null) { var assemblies = ConventionalRegistrarConfig.IsWebApp ? BuildManager.GetReferencedAssemblies().Cast <Assembly>() : AppDomain.CurrentDomain.GetAssemblies(); assemblies = FilterSystemAssembly(assemblies); foreach (var assemblie in assemblies) { IocManager.RegisterAssemblyByConvention(assemblie); } return; } IocManager.RegisterAssemblyByConvention(ConventionalRegistrarConfig.Assembly); }
public TestBaseWithLocalIocManager() { LocalIocManager = new IocManager(); /* * 需要注意注册的次序! * 先注册拦截器 */ //开启uow事务 UnitOfWorkRegistrar.Initialize(LocalIocManager); LocalIocManager.IocContainer.Register( Component.For(typeof(IDbContextProvider <>)).ImplementedBy(typeof(UnitOfWorkDbContextProvider <>)).LifestyleTransient(), Component.For <IUnitOfWorkDefaultOptions, UnitOfWorkDefaultOptions>().ImplementedBy <UnitOfWorkDefaultOptions>().LifestyleSingleton(), Component.For <IIocResolver, IocManager>().ImplementedBy <IocManager>().LifestyleSingleton(), Component.For <IUnitOfWorkManager>().ImplementedBy <UnitOfWorkManager>().LifestyleSingleton() ); LocalIocManager.Register(typeof(UnitOfWorkInterceptor), DependencyLifeStyle.Singleton); //IocManager.Register<HelpController>(DependencyLifeStyle.Transient); LocalIocManager.IocContainer.Install(new FinderInstaller()); LocalIocManager.AddConventionalRegistrar(new BasicConventionalRegistrar()); LocalIocManager.RegisterAssemblyByConvention(typeof(IRepository).Assembly); LocalIocManager.RegisterAssemblyByConvention(typeof(DomainServiceBase).Assembly); LocalIocManager.RegisterAssemblyByConvention(typeof(AppServiceBase).Assembly); //LocalIocManager.RegisterAssemblyByConvention(typeof(TestBaseWithLocalIocManager).Assembly); //LocalIocManager.RegisterAssemblyByConvention(Assembly.Load("DDD.Domain.Common")); LocalIocManager.RegisterAssemblyByConvention(Assembly.Load("DDD.Domain.Core")); LocalIocManager.RegisterAssemblyByConvention(Assembly.Load("DDD.Domain.Service")); //IocManager.Register<IBlogRepository>(); //IocManager.Register<IUserRepository>(); }
public OracleTestBaseWithLocalIocManager() { LocalIocManager = new IocManager(); /* * 需要注意注册的次序! * 先注册拦截器 */ //开启uow事务 UnitOfWorkRegistrar.Initialize(LocalIocManager); LocalIocManager.IocContainer.Register( Component.For(typeof(IDbContextProvider <>)).ImplementedBy(typeof(UnitOfWorkDbContextProvider <>)).LifestyleTransient(), Component.For <IUnitOfWorkDefaultOptions, UnitOfWorkDefaultOptions>().ImplementedBy <UnitOfWorkDefaultOptions>().LifestyleSingleton(), Component.For <IIocResolver, IocManager>().ImplementedBy <IocManager>().LifestyleSingleton(), Component.For <IUnitOfWorkManager>().ImplementedBy <UnitOfWorkManager>().LifestyleSingleton() //Component.For<IAutoMapperInitializer, AutoMapperInitializer>().ImplementedBy<AutoMapperInitializer>().LifestyleSingleton() ); LocalIocManager.Register(typeof(UnitOfWorkInterceptor), DependencyLifeStyle.Singleton); //IocManager.Register<HelpController>(DependencyLifeStyle.Transient); LocalIocManager.IocContainer.Install(new FinderInstaller()); LocalIocManager.AddConventionalRegistrar(new BasicConventionalRegistrar()); LocalIocManager.RegisterAssemblyByConvention(typeof(IAutoMapperModule).Assembly); LocalIocManager.RegisterAssemblyByConvention(typeof(IInfrastructureDomainModule).Assembly); LocalIocManager.RegisterAssemblyByConvention(typeof(IDomainCoreModule).Assembly); LocalIocManager.RegisterAssemblyByConvention(typeof(IDomainServiceModule).Assembly); LocalIocManager.RegisterAssemblyByConvention(typeof(IAppServiceModule).Assembly); }
/// <summary> /// 初始化拦截器 /// </summary> private void InitIntercept() { UnitOfWorkRegistrar.Initialize(IocManager); }
public void AddInterceptorRegistrars() { ValidationInterceptorRegistrar.Initialize(IocManager); UnitOfWorkRegistrar.Initialize(IocManager); }
protected void Application_Start() { var config = GlobalConfiguration.Configuration; //AreaRegistration.RegisterAllAreas(); //GlobalConfiguration.Configure(WebApiConfig.Register); //FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters); RouteConfig.RegisterRoutes(RouteTable.Routes, config); var iocManager = new IocManager(); //指定日志 iocManager.IocContainer.AddFacility <LoggingFacility>(f => f.UseNLog().WithConfig("NLog.config")); //iocManager.IocContainer.AddFacility<LoggingFacility>(f => f.UseLog4Net().WithConfig("log4net.config")); //开启uow事务 UnitOfWorkRegistrar.Initialize(iocManager); iocManager.IocContainer.Register( Component.For(typeof(IDbContextProvider <>)).ImplementedBy(typeof(UnitOfWorkDbContextProvider <>)).LifestyleTransient(), Component.For <IUnitOfWorkDefaultOptions, UnitOfWorkDefaultOptions>().ImplementedBy <UnitOfWorkDefaultOptions>().LifestyleSingleton(), //Component.For<IIocResolver, IocManager>().ImplementedBy<IocManager>().LifestyleSingleton(), Component.For <IUnitOfWorkManager>().ImplementedBy <UnitOfWorkManager>().LifestyleSingleton() ); iocManager.Register(typeof(UnitOfWorkInterceptor)); //注册 iocManager.AddConventionalRegistrar(new BasicConventionalRegistrar()); iocManager.AddConventionalRegistrar(new ApiControllerConventionalRegistrar()); iocManager.RegisterAssemblyByConvention(Assembly.GetExecutingAssembly()); //注册service iocManager.RegisterAssemblyByConvention(typeof(IAutoMapperModule).Assembly); iocManager.RegisterAssemblyByConvention(typeof(IInfrastructureWebApiModule).Assembly); iocManager.RegisterAssemblyByConvention(typeof(IInfrastructureDomainModule).Assembly); iocManager.RegisterAssemblyByConvention(typeof(IDomainCoreModule).Assembly); iocManager.RegisterAssemblyByConvention(typeof(IDomainServiceModule).Assembly); iocManager.RegisterAssemblyByConvention(typeof(IAppServiceModule).Assembly); iocManager.RegisterAssemblyByConvention(typeof(IocManager).Assembly); //注册泛型仓储 using (var repositoryRegistrar = iocManager.ResolveAsDisposable <EfGenericRepositoryRegistrar>()) { repositoryRegistrar.Object.RegisterForDbContext(typeof(DDDDbContext), iocManager, EfAutoRepositoryTypes.Default); } //指定解析器 config.DependencyResolver = new WindsorDependencyResolver(iocManager.IocContainer); //添加日志拦截器 config.MessageHandlers.Add(iocManager.Resolve <HttpMessageLogHandler>()); //指定controller解析器 config.Services.Replace(typeof(IHttpControllerActivator), new ApiControllerActivator(iocManager)); //注册helppage //iocManager.Register<HelpController>(DependencyLifeStyle.Transient); //初始化automapper InitialAutoMapper(iocManager.IocContainer.Resolve <IAutoMapperInitializer>()); //注册过滤器 InitializeFilters(iocManager, config); config.EnsureInitialized(); }
public override void PreInitialize() { IocManager.AddConventionalRegistrar(new BasicConventionalRegistrar()); UnitOfWorkRegistrar.Initialize(IocManager); ApplicationServiceInterceptorRegistrar.Initialize(IocManager); }
public void RegisteCompleted() { UnitOfWorkRegistrar.Initialize(RegistrationBuilders); Container = AutofacBuilder.Build(); }