0
    
    
        
                    BringerOD created
                    
                    
                    
                
                How do you remove the SaaS module from the new abp suite or abp cli create commands.
We dont need the SaaS features, how do you remove it?
- ABP Framework version: vLatest
- UI type: Angular
- DB provider: EF Core
- Tiered (MVC) or Identity Server Separated (Angular): yes
- Exception message and stack trace:
- Steps to reproduce the issue:"
3 Answer(s)
- 
    0hi - remove all saas packages from - csprojfiles.(- Volo.Saas.XXX)
- remove all saas modules from - csfiles.(- VoloSaasXXXModule)
- remove - @volo/saasfrom- package.json
- remove - ConfigureSaasfrom- DbContext
 Build your solution and remove the namespaces and use; Recreate migrations after building success. 
- 
    0Volo.Saas By default you add all this into the XXXDbMigrationService.cs in the domain project. Is there a way to remove it ` public async Task MigrateAsync() { var initialMigrationAdded = AddInitialMigrationIfNotExist(); if (initialMigrationAdded) { return; } Logger.LogInformation("Started database migrations..."); await MigrateDatabaseSchemaAsync(); await SeedDataAsync(); Logger.LogInformation("Successfully completed host database migrations."); var tenants = await _tenantRepository.GetListAsync(includeDetails: true); var migratedDatabaseSchemas = new HashSet<string>(); foreach (var tenant in tenants) { using (_currentTenant.Change(tenant.Id)) { if (tenant.ConnectionStrings.Any()) { var tenantConnectionStrings = tenant.ConnectionStrings .Select(x => x.Value) .ToList(); if (!migratedDatabaseSchemas.IsSupersetOf(tenantConnectionStrings)) { await MigrateDatabaseSchemaAsync(tenant); migratedDatabaseSchemas.AddIfNotContains(tenantConnectionStrings); } } await SeedDataAsync(tenant); } Logger.LogInformation($"Successfully completed {tenant.Name} tenant database migrations."); } Logger.LogInformation("Successfully completed all database migrations."); Logger.LogInformation("You can safely end this process..."); } private async Task MigrateDatabaseSchemaAsync(Tenant? tenant = null) { Logger.LogInformation( $"Migrating schema for {(tenant == null ? "host" : tenant.Name + " tenant")} database..."); foreach (var migrator in _dbSchemaMigrators) { await migrator.MigrateAsync(); } } private async Task SeedDataAsync(Tenant? tenant = null) { Logger.LogInformation($"Executing {(tenant == null ? "host" : tenant.Name + " tenant")} database seed..."); await _dataSeeder.SeedAsync(new DataSeedContext(tenant?.Id) .WithProperty(IdentityDataSeedContributor.AdminEmailPropertyName, TTBConsts.AdminEmailDefaultValue) .WithProperty(IdentityDataSeedContributor.AdminPasswordPropertyName, TTBConsts.AdminPasswordDefaultValue) ); }` 
- 
    0hi You can remove the tenant related code and MyProjectNameTenantDatabaseMigrationHandler.
 
                                