Usuário com melhor resposta
MVC 4 - ActionLink vs <a href= ...\>

Pergunta
-
Olá
Dúivida básica.
Eu tenho um método no controller deste jeito:
public ActionResult Edit(long clientID) { //codigo }
se na view eu faço:
@Html.ActionLink("Editar","Edit","Client", new{clientID="1234"},null)
funciona!
Mas se eu faço:
<a href="\Client\Edit\1234" \>
Nao funciona...
Eu tenho que mexer no routes para que funcione?
routes.MapRoute(
name: "Default",
url: "{controller}/{action}/{clientID}",
defaults: new { controller = "Client", action = "Details", clientID = UrlParameter.Optional }
);É isso?
William John Adam Trindade
Analyste-programmeur
----------------------------------------------------------
Sogi informatique ltée- Editado William John Adam TrindadeModerator quinta-feira, 22 de novembro de 2012 15:42
Respostas
-
Sim, tem que mexer na rota porque por padrão o mvc tenta pegar o '1234' e mapear para um parametro com nome com 'id' na sua action.
O que você pode fazer é mexer na rota ou fazer assim:
<a href="/Client/Edit?clientID=1234" \>
Ou mudar de 'clientID' para 'id' na action.
http://www.linkedin.com/pub/murilo-kunze/44/191/455
- Editado Murilo Kunze quinta-feira, 22 de novembro de 2012 16:05
- Marcado como Resposta William John Adam TrindadeModerator quinta-feira, 22 de novembro de 2012 16:24
Todas as Respostas
-
Wilian, pelo que eu saiba não funciona, so utilizando o ActionLink creio eu, nunca tentei fazer por <href> no, mais existe algum motivo especifico para você querer utilizar o <href> ao enves do ActionLink?
"Nunca deixe que os outros te subestimen, mas tambem não seja arrogante seja humilde e prove quem é
-
Sim, tem que mexer na rota porque por padrão o mvc tenta pegar o '1234' e mapear para um parametro com nome com 'id' na sua action.
O que você pode fazer é mexer na rota ou fazer assim:
<a href="/Client/Edit?clientID=1234" \>
Ou mudar de 'clientID' para 'id' na action.
http://www.linkedin.com/pub/murilo-kunze/44/191/455
- Editado Murilo Kunze quinta-feira, 22 de novembro de 2012 16:05
- Marcado como Resposta William John Adam TrindadeModerator quinta-feira, 22 de novembro de 2012 16:24
-
Ok... era só para confirmar..
Eu normalmente uso Html.ActionLink, mas o controle Telerik Kendo Grid exige href (eu tentei com actionlink mas nao funciona) para criar itens de celula como links..
Na verdade eu vou usar o padrao Edit(long id) e evitar mexer nas rotas...
Obrigado
William John Adam Trindade
Analyste-programmeur
----------------------------------------------------------
Sogi informatique ltée- Editado William John Adam TrindadeModerator quinta-feira, 22 de novembro de 2012 16:24
-