IRouteValueProvider Interface
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Interface de métadonnées qui spécifie une valeur d’itinéraire requise pour que le sélecteur d’action choisisse une action. En cas d’application à une action à l’aide du routage d’attributs, la valeur de route est ajoutée au Values lorsque l’action est sélectionnée.
Lorsqu’un IRouteValueProvider est utilisé pour fournir une nouvelle valeur d’itinéraire à une action, toutes les actions de l’application doivent également avoir une valeur associée à cette clé, ou avoir une valeur implicite de null
. Pour plus d’informations, consultez les remarques.
public interface class IRouteValueProvider
public interface IRouteValueProvider
type IRouteValueProvider = interface
Public Interface IRouteValueProvider
- Dérivé
Remarques
Le schéma classique pour la sélection d’action dans une application MVC est qu’une action nécessite les valeurs correspondantes pour ses ControllerName et ActionName
MyApp.Controllers.HomeController.Index()
, pour être sélectionnée, doit Values contenir les valeurs { « action »: « Index », « controller »: « Home » }Si des zones sont en cours d’utilisation dans l’application (voir AreaAttribute qui implémente ), toutes les actions sont considérées IRouteValueProvidersoit dans une zone en ayant une valeur de non-zonenull
(spécifiée par AreaAttribute ou une autre IRouteValueProvider) soit considérées comme « en dehors » des zones en ayant la valeur null
.
Index
: - MyApp.Controllers.HomeController.Index()
MyApp.Areas.Blog.Controllers.HomeController.Index()
- où MyApp.Areas.Blog.Controllers.HomeController
a un attribut [Area("Blog")]
de zone .Comme Values : { « action »: « Index », « controller »: « Home » }
MyApp.Controllers.HomeController.Index()
sera sélectionné.
MyApp.Area.Blog.Controllers.HomeController.Index()
n’est pas considéré comme éligible, car ne Values contient pas la valeur « Blog » pour « zone ».
Comme Values : { « area »: « Blog », « action »: « Index », « controller »: « Home » }
MyApp.Area.Blog.Controllers.HomeController.Index()
sera sélectionné.
MyApp.Controllers.HomeController.Index()
n’est pas considéré comme éligible, car les valeurs d’itinéraire contiennent une valeur pour « area ».
MyApp.Controllers.HomeController.Index()
ne peut pas correspondre à une valeur pour 'area' autre que null
.
Propriétés
RouteKey |
Clé de valeur de route. |
RouteValue |
Valeur de route. Si |