ASP.NET MVC - View com parâmetro opcional
Olá, gente.
Estou com a seguinte ideia e gostaria de implementá-la, mas meus conhecimentos em MVC ainda não me permitiram chegar a uma forma de fazer: no controller, por padrão tem a action Index, que é a que lista os itens da tabela. Eu gostaria de poder passar um parâmetro para a Index, mas também queria que ela pudesse ser chamada sem parâmetro. Por exemplo, as seguintes chamadas seriam válidas:
Na primeira chamada, listaria normalmente os itens, que é o que já acontece. Porém, SE eu passasse um parâmetro (valor inteiro representando o código do produto), eu queria automaticamente redirecionar para a view de detalhes do produto, pra não precisar chamar manualmente meuprojeto/Produtos/Details/1.
Não sei se fui clara. Se alguém já tiver feito isso ou souber como implementar e puder compartilhar comigo, eu agradeceria muito. =)
Grata desde já.
Estou com a seguinte ideia e gostaria de implementá-la, mas meus conhecimentos em MVC ainda não me permitiram chegar a uma forma de fazer: no controller, por padrão tem a action Index, que é a que lista os itens da tabela. Eu gostaria de poder passar um parâmetro para a Index, mas também queria que ela pudesse ser chamada sem parâmetro. Por exemplo, as seguintes chamadas seriam válidas:
meuprojeto/Produtos meuprojeto/Produtos/1
Na primeira chamada, listaria normalmente os itens, que é o que já acontece. Porém, SE eu passasse um parâmetro (valor inteiro representando o código do produto), eu queria automaticamente redirecionar para a view de detalhes do produto, pra não precisar chamar manualmente meuprojeto/Produtos/Details/1.
Não sei se fui clara. Se alguém já tiver feito isso ou souber como implementar e puder compartilhar comigo, eu agradeceria muito. =)
Grata desde já.
Rachel Andrade
Curtidas 0
Respostas
Joel Rodrigues
12/09/2013
Olá, Rachel. Creio que seja preciso criar uma rota customizada ou passar o parâmetro com default null.
Vou fazer alguns testes e dou um retorno em breve.
Vou fazer alguns testes e dou um retorno em breve.
GOSTEI 0
Matheus Caldas
12/09/2013
Olá, gente.
Estou com a seguinte ideia e gostaria de implementá-la, mas meus conhecimentos em MVC ainda não me permitiram chegar a uma forma de fazer: no controller, por padrão tem a action Index, que é a que lista os itens da tabela. Eu gostaria de poder passar um parâmetro para a Index, mas também queria que ela pudesse ser chamada sem parâmetro. Por exemplo, as seguintes chamadas seriam válidas:
Na primeira chamada, listaria normalmente os itens, que é o que já acontece. Porém, SE eu passasse um parâmetro (valor inteiro representando o código do produto), eu queria automaticamente redirecionar para a view de detalhes do produto, pra não precisar chamar manualmente meuprojeto/Produtos/Details/1.
Não sei se fui clara. Se alguém já tiver feito isso ou souber como implementar e puder compartilhar comigo, eu agradeceria muito. =)
Grata desde já.
Estou com a seguinte ideia e gostaria de implementá-la, mas meus conhecimentos em MVC ainda não me permitiram chegar a uma forma de fazer: no controller, por padrão tem a action Index, que é a que lista os itens da tabela. Eu gostaria de poder passar um parâmetro para a Index, mas também queria que ela pudesse ser chamada sem parâmetro. Por exemplo, as seguintes chamadas seriam válidas:
meuprojeto/Produtos meuprojeto/Produtos/1
Na primeira chamada, listaria normalmente os itens, que é o que já acontece. Porém, SE eu passasse um parâmetro (valor inteiro representando o código do produto), eu queria automaticamente redirecionar para a view de detalhes do produto, pra não precisar chamar manualmente meuprojeto/Produtos/Details/1.
Não sei se fui clara. Se alguém já tiver feito isso ou souber como implementar e puder compartilhar comigo, eu agradeceria muito. =)
Grata desde já.
Bom dia,
Você pode criar duas Action Index uma com parametro e outra sem, ou
dependendo do parametro você pode fazer assim:
public ActionResult Index(int? parametronull) { return View(); }//nesse caso ele aceitara parametros null
GOSTEI 0
Rachel Andrade
12/09/2013
Obrigada, gente. Consegui resolver isso sim.
Desculpem a demora em dar um retorno.
Desculpem a demora em dar um retorno.
GOSTEI 0