SwiftHTML & CSSSolidityDesenvolvimento de JogosSolana/Rust
18.03.2025

Passando Dois Parâmetros em Url.Action no ASP.NET: Uma Solução

Resposta Rápida

Se você deseja adicionar parâmetros ao Url.Action no ASP.NET MVC, utilize o seguinte comando com um objeto anônimo:

@Url.Action("Ação", "Controlador", new { id = 123, nome = "João" })

Isso gerará um link que inclui os parâmetros como parte da string de consulta:

<a href="@Url.Action("Ação", "Controlador", new { id = 123, nome = "João" })">Link</a>

Certifique-se de que os nomes dos parâmetros correspondem às suas rotas.

Detalhes Sobre a Codificação dos Parâmetros

É fundamental garantir a codificação correta dos parâmetros da URL e sua interpretação adequada na web. Após usar o método Url.Action, verifique a validade da URL para minimizar o risco de erros inesperados.

Correspondendo Parâmetros da Ação do Controlador com Url.Action

Os parâmetros do método Url.Action devem corresponder exatamente aos parâmetros da ação do controlador. Aqui está um exemplo de um método de ação:

public ActionResult ObterPorLista(string categoria, string subcategoria)
{
    // código para obter lista por categorias
}

A chamada correspondente de Url.Action seria:

@Url.Action("ObterPorLista", "Produtos", new { categoria = "Eletrônicos", subcategoria = "Notebooks" })

Cuidado com o Objeto routeValues

Não se esqueça de usar chaves {} ao utilizar o objeto routeValues — isso ajuda a evitar erros ao gerar links.

<a href="@Url.Action("Ação", "Controlador", new { id = 123, nome = "João" })">Link</a>

Utilize Formatos de Rotas Padrão

Para construir um link amigável, use rotas padrão. Não se esqueça de especificar o parâmetro Area caso a ação seja executada em uma parte diferente da aplicação MVC:

@Url.Action("Ação", "Controlador", new { Área = "Admin", id = 123, nome = "João" })

Evite Espaços (e Teste Regularmente!)

Espelhos em nomes de parâmetros devem ser evitados. Sempre teste os links que você cria em vários navegadores para verificar sua funcionalidade.

Atenção a Caracteres e Sensibilidade de Maiúsculas e Minúsculas

Preste atenção ao uso de letras maiúsculas e minúsculas nos nomes das ações, dos controladores e nos parâmetros. Tente evitar o uso excessivo de aspas nos valores dos parâmetros.

Visualização

O método Url.Action funciona de forma semelhante a encontrar a ferramenta certa na sua " caixa de ferramentas":

🧰.getTool("🔧", { tamanho: "M", tipo: "Ajustável" });

Neste caso, Url.Action ajuda a encontrar a ação necessária com os parâmetros especificados:

Url.Action("Baixar", "Arquivos", new { tipoDeArquivo = "PDF", ano = 2021 })
🗂️🔗📥: [📄="PDF", 🕒=2021]

Recursos Úteis

  1. Método UrlHelper.Action (System.Web.Mvc) | Microsoft Learn — documentação oficial da Microsoft para o método Url.Action.
  2. HTML Helpers no ASP.Net MVC — uma análise aprofundada sobre o mundo dos HTML helpers no ASP.NET MVC.
  3. css - Como adicionar classe ativa ao Html.ActionLink no ASP.NET MVC - Stack Overflow — discussões sobre formas de usar o método Url.Action no Stack Overflow.
  4. Roteamento de URL com ASP.NET 4.0 - CodeProject — um artigo sobre os fundamentos do roteamento de URL no ASP.NET no CodeProject.
  5. Vídeo no YouTube - Mergulho Profundo em Roteamento e Url.Action no ASP.NET MVC — uma visão detalhada de como o método Url.Action funciona.

Video

Did you like this article? Rate it from 1 to 5:

Thank you for voting!