IRouteValueProvider Rozhraní

Definice

Rozhranímetadatch Při použití akce pomocí směrování atributů se hodnota trasy přidá do Values vybrané akce.

IRouteValueProvider Pokud se použije k zadání nové hodnoty trasy k akci, musí mít všechny akce v aplikaci také hodnotu přidruženou k danému klíči nebo mají implicitní hodnotu null. Další podrobnosti najdete v poznámkách.

public interface class IRouteValueProvider
public interface IRouteValueProvider
type IRouteValueProvider = interface
Public Interface IRouteValueProvider
Odvozené

Poznámky

Typické schéma pro výběr akce v aplikaci MVC spočívá v tom, že akce bude vyžadovat odpovídající hodnoty pro svou ControllerName a ActionName

Pro akci jako MyApp.Controllers.HomeController.Index(), aby bylo možné vybrat, Values musí obsahovat hodnoty { "action": "Index", "controller": "Home" }

Pokud se oblasti používají v aplikaci (viz AreaAttribute , které implementují IRouteValueProvider), zvažují se všechny akce buď v oblasti, a to tak, že mají hodnotu nenulové oblasti (určenou AreaAttribute jiným nebo jiným IRouteValueProvider) nebo jsou považovány za "mimo" oblasti tím, že mají hodnotu null.

Zvažte aplikaci se dvěma kontrolery, z nichž každá má metodu akce indexu : - MyApp.Controllers.HomeController.Index() - MyApp.Areas.Blog.Controllers.HomeController.Index(), kde MyApp.Areas.Blog.Controllers.HomeController má atribut oblasti [Area("Blog")].

Například Values : { "action": "Index", "controller": "Home" } Bude vybrána možnost MyApp.Controllers.HomeController.Index(). MyApp.Area.Blog.Controllers.HomeController.Index() není považován za způsobilý, protože Values neobsahuje hodnotu Blog pro oblast.

Například Values : { "area": "Blog", "action": "Index", "controller": "Home" } MyApp.Area.Blog.Controllers.HomeController.Index() bude vybrán. MyApp.Controllers.HomeController.Index() není považován za způsobilý, protože hodnoty trasy obsahují hodnotu pro oblast. MyApp.Controllers.HomeController.Index() nemůže odpovídat žádné hodnotě pro jinou oblast než null.

Vlastnosti

RouteKey

Klíč hodnoty trasy.

RouteValue

Hodnota trasy. Pokud je hodnota null nebo prázdná, vyžaduje, aby hodnota trasy přidružená RouteKey k chybě nebo null.

Platí pro