Endpoint provider

In the GrandNode plugin you create routing by simple conventions from ASP.NET : {area}/{controller name}/{action name} . In some cases, you may want to change the conventions for the specific URL you can do this by asp routing attribute e.g [HttpGet(“samplename”)] or by implementing IEndpointProvider.


Example of implementation :


public partial class EndpointProvider : IEndpointProvider
    {
        public int Priority => 0;

        public void RegisterEndpoint(IEndpointRouteBuilder endpointRouteBuilder)
        {
            //Notify
            endpointRouteBuilder.MapControllerRoute("Plugin.Misc.MyPlugin.Status",
                 "mypluginstatus",
                 new { controller = "MyPlugin action = "Status" });
    }
	


You can see in example above that we change routing from "/MyPlugin/Status" to  "mypluginstatus" . You can also increase priority if you want to override another routing


More information about Endpoint route builder