Si vous avez un itinéraire:RouteValueDictionary supplantée par le contexte
routes.MapRoute("search", "{controller}/{action}/{filter1}/{filter2}/{filter3}", _
New With {.filter1 = "", .filter2 = "", .filter3 = ""})
alors dans une vue satisfaite par le motif de la route avec une url de /member/search/dev/phil/hoy
, lorsque vous essayez de créer une autre URL de la route avec seulement filter1
présente à savoir
<%=Url.RouteUrl(New RouteValueDictionary(
New With {.controller="member",.action="search", .filter1="dev"}))%>
le résultat est l'itinéraire actuel /member/search/dev/phil/hoy
, pas l'itinéraire prévu garni /member/search/dev
J'ai réussi à contourner le problème en utilisant la méthode RouteTable.Routes.GetVirtualPath
directement, mais quelqu'un sait-il pourquoi cela fonctionne de cette façon ou est-ce peut-être un bug?