1
resposta

Asp Net MVC 5 - Preciso ocultar os Ids na URL

Olá boa tarde, Pessoal, estou com o seguinte problema, por questões de segurança, preciso ocultar os Ids das URLs ao acessar a tela de edição, por exemplo:

Meu controller está assim:

  public ActionResult Edit(int id)
        {
            ProdutosDAO dao = new ProdutosDAO();
            var prod = dao.BuscaPorId(id);
            return View(prod);
        }

A chama na view está da seguinte forma, fazendo a requisição por GET, tem como fazer o mesmo usando POST?

@Html.ActionLink("Edit", "Produto", new { id = prod.Id})

A url fica da seguinte forma

http://estoque/produto/Edit/12

Preciso faz alterações para não exibir o Id do produto na URL ficando assim:

http://estoque/produto/Edit

Alguém de vocês poderia me ajudar?

Att,

Eduardo Valim

1 resposta

Olá Eduardo,

infelizmente por conta de especificação, toda tag <a> sempre fará requisição deo tipo GET, não tem como mudar para POST.

O que geralmente é feito neste caso é que ao invés de fazer um link normal com a tag <a> ou o ActionLInk do .net , as pessoas fazem um <form> mesmo do tipo POST com um input hidden do id e estilizam para o botão parecer um link.