Ainda não tem acesso? Estude com a gente! Matricule-se
Ainda não tem acesso? Estude com a gente! Matricule-se

Solucionado (ver solução)

Action

Tenho uma dúvida um pouco mais geral: existe alguma forma de proceder para garantir o não acesso a actions como a "Adiciona" do controller "Produto" diretamente pela url? Afinal a action não vai aparecer na barra de url do browser mas aparece na visualização do código-fonte da página (testei agora isso, e a instrução "

" aparece visualizando pelo browser).
2 respostas
solução

Olá Paulo

Quando colocamos um endereço na url do navegador, essa url é acessada utilizando o método Get. Então para protegermos uma determinada action, podemos configurá-la para que ela aceite apenas requisições do tipo post utilizando o HttpPostAttribute

public class ProdutoController : Controller
{
   [HttpPost]
   public ActionResult Adiciona(Produto produto)
   {
      // Implementação
   }
}

Agora esse método só pode ser acessado utilizando-se um formulário que envia seus dados através de post.

A sua dúvida foi resolvida?