This is happening in production in multiple applications.
I may be doing something wrong so please be patient and let me know what I can do to fix it.
This is a production issue. I appreciate some help/direction.
Thank you
Please help me understand these things:
Since I have to make the API Controller inherit from the related service Interface; I feel my self forced to create an API endpoint for each App service call even if I do not intend to use them (I just leave it as unimplemented sometimes)
Then in many cases and even if it's against what I want to do; whenever I inject the Interface of that service, instead of the SERVICE implementation in the Application project used, the Controller implementation is used. For example, the API is called, not the service directly when I am trying to have an action in the Web project for example when a button is clicked in behind the code (C#). It's weird that the C# app service called the CONTROLLER implementation of the Service interface instead of calling the Service directly using the Application project implementation. The image below if from the submit action of a button in WEB. It should not use the API but it is. It should use the service implementation from Application project directly instead of 2 bounces
In a completely different issue: I find it odd the multi-tiered solution duplicates the /api/ functionality in the WEB url instead of the proper was of calling API url using tokens for example. I noticed that it does this to use the logged-in user auth cookie in the web app. In a tiered application, the API calls are done with JWT token and handles renewal of the tokens etc. I still can not figure out why the Web project is tightly married to the API. Something is off.
Thank you
I started with MVC-Tiered Solution
Worked then followed: https://blog.antosubash.com/posts/abp-extend-tenant-with-custom-host
I am getting:
The requested service 'TestProj.TenantManagement.ICustomTenantRepository' has not been registered. To avoid this exception, either register a component to provide the service, check for service registration using IsRegistered(), or use the ResolveOptional() method to resolve an optional dependency..
I can not find a solution anywhere
Please help.