MVC-Attribut-routing mit der Url.Aktion nicht auflösen route

Ich kann nicht @Url.Action zu beheben, um die url, die ich erwarte, basierend auf dem Attribut route, die ich angewendet habe:

Meine Aktion (SearchController aber mit [RoutePrefix("add")])

     [Route("{searchTerm}/page/{page?}", Name = "NamedSearch")]
     [Route("~/add")]
     public ActionResult Index(string searchTerm = "", int page = 1)
     {
       ...
     }

Aufruf-Url.Aktion

@Url.Action("Index", new { controller = "Search", searchTerm = "replaceMe", page = 1 })

Diese Ergebnisse in einer url von

/add?searchTerm=replaceMe&page=1

Ich würde erwarten, dass

/add/replaceMe/page/1

Wenn ich die url manuell ein, dann löst es die richtige Maßnahme mit den richtigen Parametern. Warum nicht @Url.Action beheben die richtige url?

InformationsquelleAutor Simon | 2016-03-28
Schreibe einen Kommentar