ASP.NET MVC: Não tenho certeza como fazer estas rotas
-
05-07-2019 - |
Pergunta
eu estou tentando fazer as seguintes rotas .. e atualmente eu vou sobre isso em um realmente longo caminho .. ie. uma instância rota para cada rota.
é isso que eu estou atrás ... (supondo que eu estou fazendo um 'website stackoverflow')
/ <-- root site
/page/{page} <-- root site, but to the page of questions.
/tag/{tag}/page/{page} <-- as above, but the questions are filtered by tag
/question/ask <-- this page :P
/question/{subject} <-- reading about a question
(e não .. eu estou definitivamente não fazer um site stackoverflow :))
aplausos!
(gawd i encontrar dis tudo tão confuso às vezes).
Solução
Para a sua terceira, eu faria algo assim:
routes.MapRoute("page-tag", "tag/{tag}/page/{page}", new {controller="question", action="FilterByTag"});
Seu método de ação, em seguida, poderia ser assim:
public class QuestionController : Controller {
public ActionResult FilterByTag(string tag, int page) {
//...
}
}
Outras dicas
Eu mudaria o último URL para / pergunta / view / {subject}. Futher Criar 3 controladores:
- PageController
- TagController
- QuestionController
no Global.asax criar essas rotas, (exemplo take na rota padrão)
Espero que isso ajude.
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow