- Template: microservice
- Template Type: Classic
- Created ABP Studio Version: 1.3.3
- Current ABP Studio Version: 3.0.4
- Multi-Tenancy: Yes
- UI Framework: angular
- Theme: leptonx
- Theme Style: system
- Theme Menu Placement: side
- Database Provider: ef
- Database Management System: postgresql
- Mobile Framework: react-native
- Public Website: Yes
- Social Login: Yes
- Include Tests: Yes
- Dynamic Localization: Yes
- Kubernetes Configuration: Yes
- Grafana Dashboard: Yes
- Use Local References: No
- Aspire: Yes
- Optional Modules:
- GDPR
- FileManagement
- TextTemplateManagement
- AuditLogging
- OpenIddictAdmin
- Selected Languages: English, Turkish
- Default Language: English
- Create Command: abp new CarbonAI -t microservice --ui-framework angular --mobile react-native --database-provider ef --database-management-system postgresql --theme leptonx --skip-migrator --public-website --without-cms-kit --aspire --dont-run-bundling -no-language-management -file-management
Hello, We are creating a table via the ABP Suite, but Angular isn’t performing any operations it isn’t generating pages or proxies. Where might the problem lie, or could this be a version-related issue? We would appreciate your assistance.
7 Answer(s)
-
0
- In the microservice solution template, ABP Suite (via ABP Studio) does not support UI code generation (Angular pages/components) at the moment. It can generate code on the services (backend), but it won’t generate Angular UI/pages for microservice solutions. So what you see (“Creating Angular UI … completed” but no pages/proxies show up) is expected for this template, not a version mismatch in your project.
- What you can do instead:
- Use ABP Suite to generate backend code in the relevant microservice.
- Generate Angular proxies from the Angular app manually:
- Run the related backend host so Swagger/API endpoints are available.
- In the Angular root folder, run:
abp generate-proxy- Ensure your Angular app is configured for proxy generation (per ABP Angular proxy docs).- Create the Angular pages/components manually (or use another template where UI generation is supported).
Links worth checking (validated):
- https://abp.io/docs/latest/studio/working-with-suite (microservice template note: UI code generation not supported)
- https://docs.abp.io/en/abp/latest/UI/Angular/Service-Proxies (manual Angular proxy generation)
- https://abp.io/support/questions/10464 (same issue/confirmation for microservice + Angular)
This response was generated by AI. If it didn’t solve your problem, feel free to post a new answer — our support team will jump in to help you soon.
Markdown supported.Copy, paste, or drag & drop images and files (max 100 MB per file, 100 MB total per post) -
0
Hi,
Could you share the following so we can pinpoint it:
- The full ABP Studio Output / log content captured during the Suite "Save and generate" run — full stdout/stderr, especially any line starting with
Running the Angular Schematics command:and everything after it. - A screenshot of your microservice solution's
apps/folder, plus the contents ofapps/angular/(we want to confirmangular.jsonandpackage.jsonare there). - The contents of
.suite/config.jsonunder the microservice solution root, if one exists. - A screenshot of the Suite entity form right before you click "Save and generate", so we can see the toggles (Create UI / Use Angular Schematics / etc.).
- Output of
node -v,npm -v, and (fromapps/angular/)npx ng version. - The OS you're running Suite on (Windows / macOS / Linux + version), and the ABP Suite version (
abp suite --version). - The
.sln(or.abpsln) path you opened in ABP Studio when launching Suite, and whether you used "Add new microservice" at some point to add theTransactionService. - Was Angular page generation working for any earlier entity in this same solution, or is
InvestmentCompanythe first one you tried? - Does
apps/angularbuild/run cleanly on its own (e.g.yarn install && yarn start) before Suite is involved?
If the project is small enough, a zip of the solution (or a wetransfer link) sent to
liming.ma@volosoft.comis the fastest path — we can reproduce locally and tell you exactly which step failed.Thanks
Markdown supported.Copy, paste, or drag & drop images and files (max 100 MB per file, 100 MB total per post) - The full ABP Studio Output / log content captured during the Suite "Save and generate" run — full stdout/stderr, especially any line starting with
-
0
Hello, I think we’ve found the issue. We previously updated ABP Studio and the CLI to version 1.3.3, but the problem persisted. We observed that our method, which has a function return type, was causing an error during the proxy command. To address this, we previously had a method with a function return type on the Angular side. After cleaning up the service remnants in the proxy flow from
generate-proxy.json, we added the[RemoteService(IsEnabled = false)]tag to exclude it from the proxy flow, we observed that the page was rendered in Angular.C:\Users\.abp\suite\logs
Markdown supported.Copy, paste, or drag & drop images and files (max 100 MB per file, 100 MB total per post) -
0Markdown supported.Copy, paste, or drag & drop images and files (max 100 MB per file, 100 MB total per post)
-
0
Hi,
Thanks for digging into the first one. Quick note though:
GetTransactionPermissionPredicateAsyncis a method you added yourself (Suite never generatesFunc<...>return types), and it's only being picked up by ABP's auto API controllers because it'spublicon an AppService. The cleaner fix is to change it frompublictoprotected— ABP only exposespublicmethods as endpoints, so once it'sprotectedit won't be auto-mapped, won't end up ingenerate-proxy.json, and the schematics step won't try to map thatFunc<...>return type.[RemoteService(IsEnabled = false)]works too, but it's a workaround that leaves the method visible as part of the public AppService surface.If you actually want this method to be exposed as an application service / HTTP API, you'll need to redesign it: a
Func<...>delegate can't be serialized over HTTP, so there's no way for a client to receive or invoke it. Return a plain DTO instead (the IDs, flags, or evaluated result the predicate would compute) and let the caller use that.Clearing the stale entry from
generate-proxy.jsonwas needed because that file works as a lock file (the README the schematics generates next to it says the same) and ABP doesn't remove entries from it when a method is excluded later. We'll also track an improvement so the Suite progress dialog surfaces the actual schematics error instead of showing the step as "completed" when the subprocess fails.For the new
%%is-nullable%%/%%null-check%%issue — that's a real bug in Suite 9.3.5 (and earlier 9.3.x). TheEntityGenerateCommandfills in the navigation-property partial without substituting those two placeholders, so they get written straight into<Entity>WithNavigationProperties.csand the project no longer compiles, which is also why the migration step fails right after.This is already fixed in ABP 10.0.0 (the fix wasn't back-ported to 9.3.x). Upgrading to the latest 10.x release will resolve it.
If upgrading isn't an option right now, you can manually edit the generated
<Entity>WithNavigationProperties.csafter Suite finishes:- Replace
%%is-nullable%%with?for optional navigations, or remove it for required ones. - Replace
%%null-check%%with= null!;for required navigations, or remove it for optional ones.
Then the project will compile and the migration step will go through.
Thanks
Markdown supported.Copy, paste, or drag & drop images and files (max 100 MB per file, 100 MB total per post) - Replace
-
0
Thank you for your support; I will consider the option of an update
Markdown supported.Copy, paste, or drag & drop images and files (max 100 MB per file, 100 MB total per post)













