ASP.NET Core has support for conventions, which are classes that implement well-known interfaces and can be registered to the application to modify certain aspects of it. The convention interfaces are as follows:
- IApplicationModelConvention: This provides access to application-wide conventions, allowing you to iterate over each of the following levels—that is, the controller model, action model, and parameter model.
- IControllerModelConvention: These are conventions that are specific to a controller, but also allow you to evaluate lower levels (the action model).
- IActionModelConvention: This lets you make changes to action-level conventions, as well as to any parameters of the actions (the parameter model).
- IParameterModelConvention: This is specific to parameters only.
- IPageRouteModelConvention: This lets us customize the default routes to Razor Pages (ASP.NET Core 2.x). ...