Ho un semplice modulo di ricerca nella mia pagina principale e un controller e una visualizzazione di serach. Sto cercando di ottenere il seguente percorso per il termine di ricerca stringa "myTerm" (per esempio): root/ricerca/myTermCerca percorso in ASP.NET MVC
il modulo nella pagina master:
<% using (Html.BeginForm("SearchResults", "Search", FormMethod.Post, new { id = "search_form" }))
{ %>
<input name="searchTerm" type="text" class="textfield" />
<input name="search" type="submit" value="search" class="button" />
<%} %>
L'azione di controllo :
public ActionResult SearchResults(string searchTerm){...}
Il percorso che sto usando:
routes.MapRoute(
"Search",
"search/{term}",
new { controller = "Search", action = "SearchResults", term = (string)null }
);
routes.MapRoute(
"Default",
"{controller}/{action}",
new { controller = "Home", action = "Index" }
);
Ricevo sempre l'url "root/search" senza il termine di ricerca, indipendentemente dal termine di ricerca immesso.
Grazie.
Suppongo che il modulo stia effettivamente postando correttamente e tu stia semplicemente aggiungendo un percorso in modo che tu possa chiamare la ricerca direttamente da un URL giusto? –