重寫如果你有一個路線:RouteValueDictionary上下文
routes.MapRoute("search", "{controller}/{action}/{filter1}/{filter2}/{filter3}", _
New With {.filter1 = "", .filter2 = "", .filter3 = ""})
然後通過路由模式與/member/search/dev/phil/hoy
一個網址,當您試圖創建另一個路線網址只有filter1
存在即滿足了看法
<%=Url.RouteUrl(New RouteValueDictionary(
New With {.controller="member",.action="search", .filter1="dev"}))%>
結果是當前路由/member/search/dev/phil/hoy
,而不是預期的修整路線/member/search/dev
我已經設法通過直接使用RouteTable.Routes.GetVirtualPath
方法來解決問題,但是有誰知道它爲什麼以這種方式工作,或者它可能是一個錯誤?