When creating or editing an entity property of type decimal in ABP Suite's UI, there's no field to specify precision and scale (e.g. 18,6). The generated DbContext.OnModelCreating code and migration only use the default decimal mapping.
Because of this, every time I:
add a new entity with a decimal property, or add a new decimal property to an existing entity, or regenerate/modify any other property on a table that already has decimal columns, I have to manually go into the generated OnModelCreating and add .HasColumnType("decimal(18,6)") (or the appropriate precision) to each decimal Property() call by hand, then create a new EF Core migration just for that fix — every single time, since Suite doesn't remember or apply it.
Question: Is there a way to configure precision/scale for decimal properties directly in ABP Suite (globally or per-property), so it's included automatically in the generated code and migration, instead of manually patching OnModelCreating after every generation?
Steps to reproduce:
Open ABP Suite → create or edit an entity Add/keep a property of type decimal No precision/scale option is available in the property editor Generate → resulting OnModelCreating/migration has no explicit precision, requiring manual .HasColumnType(...) fix and an extra migration
ABP Commercial v9.2.0, .NET 9.0
Features are configured at Host level via SaaS Tenant management. When TourModule.TourService feature is disabled for a tenant, that tenant's Permission Management UI still shows all Tour permissions.
Tenant Edition: standard
Feature definition (TMSMSFeature.cs):
public const string GroupName = "TourModule"; public const string Tour = GroupName + ".TourService"; // = "TourModule.TourService"
Feature provider (FeatureProvider.cs):
myGroup.AddFeature(TMSMSFeature.Tour, defaultValue: "false", displayName: LocalizableString.Create<TourServiceResource>("TourServiceModule"), valueType: new ToggleStringValueType());
Permission definitions (all Tour permissions have .RequireFeatures):
var tourCategoryPermission = myGroup.AddPermission( TourServicePermissions.TourCategories.Default, L("Permission:TourCategories")).RequireFeatures(TMSMSFeature.Tour); tourCategoryPermission.AddChild(TourServicePermissions.TourCategories.Create, L("Permission:Create")).RequireFeatures(TMSMSFeature.Tour); tourCategoryPermission.AddChild(TourServicePermissions.TourCategories.Edit, L("Permission:Edit")).RequireFeatures(TMSMSFeature.Tour); tourCategoryPermission.AddChild(TourServicePermissions.TourCategories.Delete, L("Permission:Delete")).RequireFeatures(TMSMSFeature.Tour);
All permissions in TourServicePermissionDefinitionProvider.cs follow this same pattern with .RequireFeatures(TMSMSFeature.Tour).
**Additional issue: **Some permissions generated by ABP Suite do NOT include .RequireFeatures(). When we generate a new entity table using ABP Suite, the auto-generated permission definitions are created without .RequireFeatures(). For example:
// ABP Suite generates this (no .RequireFeatures): var tourGlobalMarkupPermission = myGroup.AddPermission( TourServicePermissions.TourGlobalMarkups.Default, L("Permission:TourGlobalMarkups")); Can ABP Suite be configured to automatically add .RequireFeatures() when generating permissions? Or is there a way to set this at the group level so all child permissions inherit it?
Screenshots attached:
Feature Management UI showing TourModule disabled for "standard" edition The permission management UI still showing Tour permissions for that tenant
Expected:
When TourServiceModule feature is disabled at Host level for a tenant (or its edition), Tour permissions should be hidden from that tenant's Permission Management UI. ABP Suite should support adding .RequireFeatures() automatically during entity generation.
This screenshot for the tenant feature
This from edition feature.
When creating a user under a tenant in the our application:
In the local environment, the user is correctly created under the specified tenant. In the production environment, performing the same action results in the user being created under the host instead of the intended tenant.
We are experiencing significant delay during user login due to a slow response from the following API:
/api/abp/application-configuration?includeLocalizationResources=false
This API call is taking longer than expected and is impacting the overall login performance and user experience. Observed Behavior
Expected Behavior
Attachments
Please find the relevant screenshots below demonstrating the issue:
• ABP Framework Version: (9.2.0)
• UI Type: Angular
• Database (Main App): SQL Server
• New Microservice Databases: PostgreSQL
• Solution Type: Microservice
• Auth Server Type: IdentityServer
•
Problem Description: I'm adding a new microservice to an existing ABP.IO microservice solution (created with abp new using SQL Server). The new service uses: • PostgreSQL for relational data (via EF Core) While the backend API for the new microservice builds and runs, it is not integrated properly into the solution:
Issues Encountered: 1. Backend API not visible in Angular UI ◦ API endpoints are functional (tested with Swagger) ◦ Angular app does not show menus or modules related to the new microservice 2. No Permissions Created ◦ Permission groups defined in the new microservice are not visible in the AbpPermissions table in SQL Server ◦ No roles or permissions appear to be synchronized 3. Settings Not Registered ◦ Settings defined in the new microservice module are not persisted to the database ◦ They don't appear in the AbpSettings table 4. No Navigation/Menu Integration ◦ Angular does not list the new module/menu ◦ Menu contributor not picked up (even though it’s implemented)
And For MongoDB Service
Environment Information: • ABP Framework Version: (9.2.0) • UI Type: Angular • Database (Main App): SQL Server • New Microservice Databases: MongoDB • Solution Type: Microservice • Auth Server Type: IdentityServer • Problem Description: I'm adding a new microservice to an existing ABP.IO microservice solution (created with abp new using SQL Server). The new service uses: • MongoDB While the backend API for the new microservice builds and runs, it is not integrated properly into the solution:
Issues Encountered: 1. Backend API not visible in Angular UI ◦ API endpoints are functional (tested with Swagger) ◦ Angular app does not show menus or modules related to the new microservice 2. No Permissions Created ◦ AbpPermissions documents are created in MongoDB database, not in SQL Server (Is that correct?) ◦ Permission groups defined in the new microservice are not visible in the AbpPermissions Document in MongoDB. ◦ No roles or permissions appear to be synchronized 3. Settings Not Registered ◦ Settings defined in the new microservice module are not persisted to the database ◦ They don't appear in the AbpSettings Document in MongoDB. 4. No Navigation/Menu Integration ◦ Angular does not list the new module/menu ◦ Menu contributor not picked up (even though it’s implemented)