Base solution for your next web application

Activities of "gep13"

Hello,

Thank you for providing this link, this looks like it will be really helpful!

I have tried to go through what is described, and I "think" I have done everything, but when I try to access the new route that I have defined, I get the following error message:

An unhandled exception occurred while processing the request.
ComponentNotFoundException: No component for supporting the service EmbeddedPlugin.Controllers.ApprovalController was found
Castle.MicroKernel.DefaultKernel.Castle.MicroKernel.IKernelInternal.Resolve(Type service, Arguments arguments, IReleasePolicy policy, bool ignoreParentContext)

Is there something else that needs to be done here? Is there a complete sample available that shows an embedded plugin?

This is the structure that I am trying to follow:

Do you have any advice on how an Embedded Plugin would add itself into the navigation structure for the overall application? In addition, what would be the correct way for an Embedded Plugin to bring its own permissions and settings, to allow configuration of the different parts of the plugin, in the same way that you can control settings and permissions for the main application.

Thanks again for all your help so far, it has been really helpful!

@ismcagdas I just wanted to touch base to see how this was progressing. Is this something that you have been able to work on?

Thanks

@ismcagdas thanks for getting back to me!

This is the type of UI that I was hoping to find, but to date, I haven't seen this when running the application.

Is this due to the fact that we are running in Single Tenant Mode? Is there a may to enable/disable features for the single tenant that we have running?

The above links seem to be specific to when creating additional tenants within the application.

Thanks Gary

@ismcagdas no need to apologise! This does sound like exactly what am I looking for. Looking forward to checking out the documentation for this, and taking it for a spin!

Hello @musa.demir, yes, I am talking about the AbpFeatures table. There are some entries in there out of the box with aspnetzero, for example, App.Captcha, App.ChatFeature, etc. In addition, we have also had some of our own feature flags into this table. However, in order to enable one of these features, we have to go directly into the database, using something like SQL Server Management Studio, or similar, to toggle the feature on.

I am just wondering if I am missing something in terms of a built in UI to the application, that allows controlling which of these features is enabled or not.

Prerequisites

Please answer the following questions before submitting an issue. YOU MAY DELETE THE PREREQUISITES SECTION.

  • What is your product version?
    • 9.3
  • What is your product type (Angular or MVC)?
    • MVC
  • What is product framework type (.net framework or .net core)?
    • .NET Core

If issue related with ABP Framework

  • What is ABP Framework version?
    • N/A

If issue is about UI

  • Which theme are you using?
    • N/A
  • What are the theme settings?
    • N/A

Within the ASPNETZERO application, there are some built in feature flags that can be enabled/disabled, and we have also extended this to include some of our own feature flags for certain pieces of functioanlity.

At the minute, it is necessary to directly go into the database to toggle these features on/off.

Am I missing something, or is there a UI somewhere that can be shown to turn features on/off?

Thanks Gary

@ismcagdas that is great news!

I would be more than happy to take any rough drafts or notes related to the article for a spin to test things out, and to provide feedback.

Would you have any rough tips/guidance on top of what you have already mentioned that I might be able to start with?

Thanks

@ismcagdas thanks for getting back to me about this, I really appreicate it!

Do you have any plans to create a sample application that shows how this can be achieved? What I would like to achieve is to have a Plugin created, that once installed, brings with it, navigation menu items (to add to the main navigation menu), permissions, Views, etc, for a new section of the website.

Prerequisites

Please answer the following questions before submitting an issue. YOU MAY DELETE THE PREREQUISITES SECTION.

  • What is your product version?
    • 9.3
  • What is your product type (Angular or MVC)?
    • MVC
  • What is product framework type (.net framework or .net core)?
    • .NET Core

If issue related with ABP Framework

  • What is ABP Framework version?
    • N/A

If issue is about UI

  • Which theme are you using?
    • N/A
  • What are the theme settings?
    • N/A

I have read the following article:

https://aspnetboilerplate.com/Pages/Documents/Plugin?searchKey=plugins

Which shows a very clean way of extending an application through the use of Plugins, however, the example seems to be limited to "backend" functionality, i.e. to provide the ability to do "work" on the application, in this case to provide a background worker to clear out the database.

Is it also possible to allow the extension of the UI for the application via a Plugin? If so, are there any examples of doing this?

We would like to be able to provide the core application to people, and then to allow the inclusion of a number of plugins. These plugins would contain additional UI (web pages) and application functionality.

Is this possilble?

If not possible out of the box, would there be any reason that we couldn't extend using something like ASP.NET Application Parts:

https://docs.microsoft.com/en-us/aspnet/core/mvc/advanced/app-parts?view=aspnetcore-5.0

Do you know of any examples of using an Application Part to extend an ASP.NET Zero project?

Thanks in advance! Gary

Thanks for getting back to me. I have found the issue.

There was actually an error being thrown in Migrator, which wasn't being caught due to how Migrator was being executed. Migrator always returned with a zero exit code, even when there was an error. I have changed the code of Migrator to now return a non-zero exit code when there is a problem, and this is now surfacing as part of the installation process that we are using.

Thanks

Showing 1 to 10 of 43 entries