Tenho uma View chamada Browse.chtml
, onde o usuário pode inserir um termo de pesquisa ou deixar o termo de pesquisa em branco. Ao inserir o termo de pesquisa, desejo direcionar a página para http://localhost:62019/Gallery/Browse/{Searchterm}
e quando nada for inserido, desejo direcionar o navegador para http://localhost:62019/Gallery/Browse/Start/Here
.
Quando tento fazer isso, obtenho o erro:
A solicitação atual de ação 'Browse' no tipo de controlador 'GalleryController' é ambígua entre os seguintes métodos de ação: System.Web.Mvc.ActionResult Browse (System.String) no tipo AutoApp_MVC.Controllers.GalleryController System.Web.Mvc.ActionResult Browse (Int32, System.String) no tipo AutoApp_MVC.Controllers.GalleryController
Tudo que estou fazendo com MVC é pela primeira vez. Não tenho certeza do que mais tentar neste momento.
public ActionResult Browse(string id)
{
var summaries = /* search using id as search term */
return View(summaries);
}
public ActionResult Browse(string name1, string name2)
{
var summaries = /* default list when nothing entered */
return View(summaries);
}
Eu também tenho isso em Global.asax.cs:
routes.MapRoute(
"StartBrowse",
"Gallery/Browse/{s1}/{s2}",
new
{
controller = "Gallery",
action = "Browse",
s1 = UrlParameter.Optional,
s2 = UrlParameter.Optional
});
routes.MapRoute(
"ActualBrowse",
"Gallery/Browse/{searchterm}",
new
{
controller = "Gallery",
action = "Browse",
searchterm=UrlParameter.Optional
});