Base solution for your next web application
Open Closed

New module #10896


User avatar
0
Loizos created
  • What is your product version? 11.0.1
  • What is your product type (Angular or MVC)? Angular
  • What is product framework type (.net framework or .net core)? .NET 6

I have the following case and I would like your advises on how to proceed.

I would like to deploy a new small web application (client portal) in order to access specific part/services of the main application, but with limited permissions and functionality of course. The main application (angular + asp.net core) is a multitenant application and each tenant/customer have it's own clients, hence the need of the client portal. To do so I am planning to create a new web application/front-end but I would like to benefit and use the existing asp.net zero functionality as my base/core back-end.

  1. Can I create a new class project inside existing core solution as a new module in order to implement all portal related application services? i.e mycompany.myapplication.application.portal Do I need to create a new module in all layers or a new module in application layer only?

  2. How can I expose these services separated and isolated and not mixing them with the application (full) services and functionality? If I just add the depentency in webcoremodule it's going to add/expose the new services along with the application services right? Do I have to create a new web host project instead? Please advise.

  3. Also how can I isolate database related functionality on EF/migration layer as well as on DB layer? For the DB layer can I implement a new repository that will point to a new connection string? This way I am thinking to have a second schema on the database (SQL) with limited permissions. Please advise your recommendation on this.

Thank you.


5 Answer(s)
  • User Avatar
    0
    ismcagdas created
    Support Team

    Hi @Loizos

    1. I suggest creating all layers for your module instead of just creating the Application layer.
    2. If you don't want to expose those services with your main app, yes, you need to create a new web app and depend on your new app module.
    3. If you create a new EF Core layer for your module, you can configure a different DB.

    As I can see, what you need is a new web app (with all layers) instead of adding a new module to existing app. Why don' t you proceed that way ? You can move the common parts in your existing app to a class library and use it both from your existing app and new app.

  • User Avatar
    0
    Loizos created

    Hi @ismcagdas,

    Thank you for your answers. I am still little confused though because in order create a new app with all layers, it means that I have to purchase a new license right? In such a case I don't believe I will get an approval from MDs for the moment so I am looking for alternatives.

    So for example my initial idea is to create a new front-end client portal (outside asp.net zero) but connect it with the existing back-end (asp.net zero). Is that possible or not? Can I utilize the existing distrubution layer in order to call application APIs from my own front-end?

    The second thing is that I would like to isolate somehow all available services to the client portal. How can I achieve that and what are the options I have? Can I use permissions for example instead of separate them physically? Please explain me a little bit on this matter.

    Thank you in advance.

  • User Avatar
    0
    ismcagdas created
    Support Team

    Hi,

    If your second app and first app belongs to same product, you don't need a new license.

    The second thing is that I would like to isolate somehow all available services to the client portal. How can I achieve that and what are the options I have? Can I use permissions for example instead of separate them physically? Please explain me a little bit on this matter.

    Yes, you can use permissions but you need to grant necessary permissions to specific roles/users manually.

  • User Avatar
    0
    Loizos created

    Hi @ismcagdas

    Thank you very much that's great news for me :)

    So can you just explain now how to deal/comply with naming conventions in regards to the new project names (hence namespaces)?

    Thanks, Loizos

  • User Avatar
    0
    ismcagdas created
    Support Team

    Hi @Loizos

    Could you send an email to [email protected] with the module names you want to create so we can help you.

    Thanks,