public override void PreInitialize() { //workaround for issue: https://github.com/aspnet/EntityFrameworkCore/issues/9825 //related github issue: https://github.com/aspnet/EntityFrameworkCore/issues/10407 AppContext.SetSwitch("Microsoft.EntityFrameworkCore.Issue9825", true); Configuration.Auditing.IsEnabledForAnonymousUsers = true; //Declare entity types Configuration.Modules.Zero().EntityTypes.Tenant = typeof(Tenant); Configuration.Modules.Zero().EntityTypes.Role = typeof(Role); Configuration.Modules.Zero().EntityTypes.User = typeof(User); PortalLocalizationConfigurer.Configure(Configuration.Localization); //Adding feature providers Configuration.Features.Providers.Add <AppFeatureProvider>(); //Adding setting providers Configuration.Settings.Providers.Add <AppSettingProvider>(); //Adding notification providers Configuration.Notifications.Providers.Add <AppNotificationProvider>(); //Enable this line to create a multi-tenant application. Configuration.MultiTenancy.IsEnabled = PortalConsts.MultiTenancyEnabled; //Enable LDAP authentication //Configuration.Modules.ZeroLdap().Enable(typeof(AppLdapAuthenticationSource)); //Twilio - Enable this line to activate Twilio SMS integration //Configuration.ReplaceService<ISmsSender,TwilioSmsSender>(); // MailKit configuration Configuration.Modules.AbpMailKit().SecureSocketOption = SecureSocketOptions.Auto; Configuration.ReplaceService <IMailKitSmtpBuilder, PortalMailKitSmtpBuilder>(DependencyLifeStyle.Transient); //Configure roles AppRoleConfig.Configure(Configuration.Modules.Zero().RoleManagement); Configuration.ReplaceService <IEmailSender, NullEmailSender>(DependencyLifeStyle.Transient); Configuration.ReplaceService(typeof(IEmailSenderConfiguration), () => { Configuration.IocManager.IocContainer.Register( Component.For <IEmailSenderConfiguration, ISmtpEmailSenderConfiguration>() .ImplementedBy <PortalSmtpEmailSenderConfiguration>() .LifestyleTransient() ); }); Configuration.Caching.Configure(FriendCacheItem.CacheName, cache => { cache.DefaultSlidingExpireTime = TimeSpan.FromMinutes(30); }); IocManager.Register <DashboardConfiguration>(); }
public override void PreInitialize() { Configuration.Auditing.IsEnabledForAnonymousUsers = true; // Declare entity types Configuration.Modules.Zero().EntityTypes.Tenant = typeof(Tenant); Configuration.Modules.Zero().EntityTypes.Role = typeof(Role); Configuration.Modules.Zero().EntityTypes.User = typeof(User); PortalLocalizationConfigurer.Configure(Configuration.Localization); // Enable this line to create a multi-tenant application. Configuration.MultiTenancy.IsEnabled = PortalConsts.MultiTenancyEnabled; // Configure roles AppRoleConfig.Configure(Configuration.Modules.Zero().RoleManagement); Configuration.Settings.Providers.Add <AppSettingProvider>(); }