Pergunta

Eu tenho lavada da web para uma explicação decente da sintaxe roteamento em ASP.NET MVC Beta 1, mas eu ainda não posso fazê-lo funcionar.

Por favor, alguém poderia explicar o que eu preciso para colocar no meu arquivo Global.asax.cs ter dois URIs suportados para o meu site:

www.mysite.com/map.aspx (isto é, o site sem qualquer explícitas parâmetros / acções para executar a ação padrão), e,

www.mysite.com/map.aspx/search/searchParam1/searchParam2/searchParam3/ (para a realização de uma busca)

PS:. Enquanto isso, vou continuar a trabalhar sobre isso e eu vou postar a resposta me se eu encontrá-lo

Foi útil?

Solução

routes.MapRoute("Default", "map.aspx", new { controller = "DefaultController", action = "DefaultAction" });

routes.MapRoute("Search", "map.aspx/search/{*params}", new { controller = "SearchController", action = "Search" } );

Exemplo URL: http://www.mysite.com/map aspx / search / cães / gatos /

Parâmetros passados ??para SearchController.Search (): params = "/ cães / gatos"

Você pode, então, analisar os parâmetros, a fim de processar os seus resultados de pesquisa.

No entanto, na minha opinião, colocando map.aspx na URL parece errado se você está construindo uma aplicação MVC. Seu url deve ser semelhante http://www.mysite.com/search/

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top