-
Notifications
You must be signed in to change notification settings - Fork 40
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Does this library supports Blazor? #32
Comments
Hi, Blazor is not yet supported, but it will be in active development after the next release, which focuses on .NET 5 compliance |
Thanks a lot for your response. If you need help with anything, don't hesitate to reach out. |
@serge-wq there are two stories to Blazor (server-side, client-side). For the server-side, the app would load the plugin assemblies from the server directory (wwwroot). The client would need to download these plugins over the network (I believe it should be packaged, like nuget packages) and load them up on-demand. Not to say it is impossible to achieve, but the design of the Blazor application should be well thought through. In theory, it should behave similarly to the MVC plugin example found here: https://github.com/merken/Prise.Examples/tree/master/MVCPlugins Performance is also going to be an issue, most of the plugins are packaged with their versions of the dependencies, this results in a (necessary) bulky download for each active plugin.
Looking forward to insight from others... |
Another thing to keep in mind is that Client side Blazor relies on netstandard. Prise is a netcore-specific library that leverages some netcore 3.0 and 3.1 API's that are unavailable to netstandard 2 (or 2.1). This does not mean porting Prise to netstandard is impossible, it's worth a try 👍 |
For Blazor Server I don't see much of a problem. As you say the tricky part is client side, but maybe if the client is served by a ASP.NET Core backend the plugins could be loaded from there? This would limit the deploy options for Blazor WASM, though. Also you can specify from which assemblies the Router component can fetch components to render as pages. This could be helpful if the plugin includes Blazor components as pages. |
Firstly, I'm checking whether (down)loading an assembly from the server is possible and having it invoked dynamically, but the project first needs to be ported to netstandard2.1 because mono only supports netstandard. You can track progress here: https://github.com/merken/Prise/tree/wasm |
Hi, I just found this and the library seems awesome. I will definitely give it a try. I was just wondering if I could use this to map routable and not routable razor components to the host project, similar to how the MVC stuff works.
The text was updated successfully, but these errors were encountered: