Não consigo recuperar um ID que estou enviando em um html.ActionLink em meu controlador. Aqui está o que estou tentando fazer
<li>
<%= Html.ActionLink("Modify Villa", "Modify", "Villa", new { @id = "1" })%></li>
public ActionResult Modify(string ID)
{
ViewData["Title"] =ID;
return View();
}
Isso é o que um tutorial que eu segui recomendou, mas não está funcionando, também está colocando? Length = 5 no final da URL!
Desde já, obrigado!
editar: aqui está a rota que estou usando, é o padrão
routes.MapRoute(
"Default", // Route name
"{controller}/{action}/{id}", // URL with parameters
new { controller = "Home", action = "Index", id = "" } // Parameter defaults
);
parece que alguém votou contra as duas sugestões abaixo, mas não postou a solução!
c#
asp.net-mvc
Tábua
fonte
fonte
No MVC 4, você pode vincular de uma visão a outro controlador passando o Id ou chave primária via
fonte
Não coloque @ antes do id
O framework "traduz" em comprimento quando há uma incompatibilidade no parâmetro / rota
fonte
No MVC 5 é bastante semelhante
fonte
O ID funcionará com o
@
sinal na frente também, mas temos que adicionar um parâmetro depois disso. isso énull
parece:
fonte