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); DemoLocalizationConfigurer.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 = DemoConsts.MultiTenancyEnabled; //Enable LDAP authentication (It can be enabled only if MultiTenancy is disabled!) //Configuration.Modules.ZeroLdap().Enable(typeof(AppLdapAuthenticationSource)); //Configure roles AppRoleConfig.Configure(Configuration.Modules.Zero().RoleManagement); //if (DebugHelper.IsDebug) //{ // //Disabling email sending in debug mode // Configuration.ReplaceService<IEmailSender, NullEmailSender>(DependencyLifeStyle.Transient); //} //Configuration.ReplaceService<IMailKitSmtpBuilder, E3MailKitSmtpBuilder>(); Configuration.ReplaceService(typeof(IEmailSenderConfiguration), () => { Configuration.IocManager.IocContainer.Register( Component.For <IEmailSenderConfiguration, ISmtpEmailSenderConfiguration>() .ImplementedBy <DemoSmtpEmailSenderConfiguration>() .LifestyleTransient() ); }); Configuration.Caching.Configure(FriendCacheItem.CacheName, cache => { cache.DefaultSlidingExpireTime = TimeSpan.FromMinutes(30); }); Configuration.Caching.Configure(PaymentCacheItem.CacheName, cache => { cache.DefaultSlidingExpireTime = TimeSpan.FromMinutes(DemoConsts.PaymentCacheDurationInMinutes); }); }
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); DemoLocalizationConfigurer.Configure(Configuration.Localization); // Enable this line to create a multi-tenant application. Configuration.MultiTenancy.IsEnabled = DemoConsts.MultiTenancyEnabled; // Configure roles AppRoleConfig.Configure(Configuration.Modules.Zero().RoleManagement); Configuration.Settings.Providers.Add <AppSettingProvider>(); }