Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Is ASP.NET Core Minimal API beginning forward slash a must?

Is there any difference between:

  1. app.MapGroup("") vs app.MapGroup("/")
  2. app.MapGet("task") vs app.MapGet("/task")

When I did tests, they looked no different. Just want to confirm. If they are the same, why do we add the "/"?

like image 297
Kumima Avatar asked Oct 25 '25 07:10

Kumima


1 Answers

Always take an initiative and dive in the source code =). When you have a challenge or need to understand why something works some way.

The difference is that if you append a "/" for anything calling MapMethods i.e MapGroup,MapGet, MapPost,MapPatch...etc.It will be trimmed.

The RoutePatternFactoryClass will trim it under the hood i.e the first "/" or these two characters "~/" (with RoutePatternParser under method TrimPrefix()) the resultant string will be taken as the route pattern.

why do we add the "/"?

I would guess majorly because of the templates we just adopt it not questioning why? ,from examining source I see this will be an overhead (though minimal and trivial), I would just skip those characters and put my intended path i.e .MapGet("task").

like image 106
Denis Michealk Avatar answered Oct 26 '25 23:10

Denis Michealk



Donate For Us

If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!