The Routing topic updates on #9527 explain new-for-2.2 endpoint-based routing in the context of legacy IRouter-based routing and refer explicitly to the 2.2 version release. Remove the versioning language (e.g., "new in").
Refactor for whole-topic versioning.
⚠Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.
@guardrex I think we should break this up into 4 sections
::: moniker range="<= aspnetcore-1.1"
For the 1.1 version of this topic, download Routing in ASP.NET Core (version 1.1, PDF).
::: moniker-end
::: moniker range="= aspnetcore-2.1"
2.1 version here
::: moniker-end
::: moniker range="= aspnetcore-2.2"
2..2 version here
::: moniker-end
::: moniker range=">= aspnetcore-3.0"
3.0 version here
::: moniker-end
If you agree, would you like me to do that before you start the 3.0 version. There is some 3.0 content in the doc now.
::: moniker range=">= aspnetcore-3.0"
When a Routing Middleware executes, it sets an endpoint (Endpoint) and route values to a feature on the xref:Microsoft.AspNetCore.Http.HttpContext. For the current request:
Calling HttpContext.GetEndpoint gets the endpoint.
HttpRequest.RouteValues gets the collection of route values.
Middleware running after the Routing Middleware can see the endpoint and take action. For example, an Authorization Middleware can interrogate the endpoint's metadata collection for an authorization policy. After all of the middleware in the request processing pipeline is executed, the selected endpoint's delegate is invoked.
::: moniker-end
I think that there will be few 3.0 updates to this topic, and this issue wasn't opened for that purpose really. This issue is about dropping all of the legacy IRouter-based content and refactoring a few of the lines that we stuck in at 2.2. I'll take care of this one.
:trumpet: :clap: :sunglasses: I'll buy you :beers: for that!
It's because that transition occurred between 2.1 and 2.2. Sooooo ... since we only really doc the last minor version and don't want folks using the earlier minor releases, we can remove that content. However, the best time is probably at ... or very close to ... 3.0 GA. I have a pretty good idea what to do here. I just need to collect a little more info on routing updates for 3.0 from the engineering repo/Ryan.
We can't drop 2.1 as 2.1 is a LTS
We can't drop 2.2 as that's current and when 3.0 GA's it's cur-1 (which we maintain). We can drop 2.2 when 3.1 comes out.
I thought this fell under when you said before that only the API docs have to cover it. No worries ... there will be less to do here then since we're keeping the content.
I still need to update some of the "new in 2.2" text that we used.
@DamianEdwards wants us to keep LTS content until it's end of life. Legally we're only required to maintain .NET Framework API's - not even .NET Core API's.