DevMedia - asp.net, Java, Delphi, SQL e web Design, tudo em um só lugar!
Bem vindo a DevMedia!
LOGIN:     SENHA:
 
 

Conceitos e Exemplo – URL Amigáveis em ASP.NET

Neste artigo demonstro os conceitos do que são as URL Amigáveis, em ASP.NET, e como você pode aplica-las em seu site.

[fechar]

Você não gostou da qualidade deste conteúdo?

(opcional) Você gostaria de comentar o que não lhe agradou?

É possível vermos em diversos sites e portais endereços de url que não são tão fáceis de decorar devido ao tamanho e, a muitas vezes, inclusão de números e valores que a deixam complexa, difícil de memorizar e sem sentido (pensando no usuário comum, é claro).

Para resolver este problema existem as urls amigáveis. Com elas conseguimos transformar uma url complexa em uma url fácil de entender e memorizar.

Um exemplo simples: uma página de detalhe de um determinado produto, que teria a seguinte url:

http://www.site.com.br/DetalheProduto.aspx?IdProduto=12345

Transformar-se-ia facilmente em:

http://www.site.com.br/Produto

Temos duas formas de fazer isso (pelo menos as duas mais usadas): 1- abrindo a chave urlMappings no Web.Config e incluindo, manualmente, a url que desejamos deixar amigável, e 2- fazendo isso de forma dinâmica (a que acho melhor e mais correta).

Para a criação do exemplo deste artigo foi usada a documentação da MSDN sobre a classe UrlMapping, que pode ser vista neste link.

Crie uma aplicação Web, criando duas páginas, dando a elas o nome Produtos.aspx e DetalheProduto.aspx. No arquivo de configuração do site, o Web.Config, adicione a chave do urlMappings, dentro da chave system.web, como ilustra a Listagem 01.

Listagem 01 – Chave UrlMappings que conterá a Url amigável


<system.web>
<urlMappings />
Na página Produtos adicione um botão com um texto qualquer, dando a ele o ID btnUrlAmigavel.

Chame seu evento click e, dentro dele, crie a lógica para que apliquemos a url amigável, como é ilustrado na Listagem 02 (lembrando que, como isto é um exemplo, não utilizei tratamento de erros e não me importei em deixar o código direto no botão). Lembre-se de declarar os namespaces System.Web.Configuration e System.Configuration.

Listagem 02 – Criação da Url Amigável


protected void btnUrlAmigavel_Click(object sender, EventArgs e)
        {
            // Cria uma variável do tipo UrlMapping
            UrlMapping urlMap = null;
 
            // Abre o Web.config
            Configuration config =  
               WebConfigurationManager.OpenWebConfiguration("~");

            // Recupera a seção urlMappings, do web.config
            UrlMappingsSection urlMapSection = 
   (UrlMappingsSection)config.GetSection("system.web/urlMappings");
            // Adiciona a URL Amigável a seção, que é salva no Web.Config
            urlMap = new UrlMapping("~/Produto", 
      "~/DetalheProduto.aspx?IdProduto=12345");

            urlMapSection.UrlMappings.Add(urlMap);

            // Grava no web.config
            config.Save();
 
            Response.Redirect("Produto");
        }
Os comentários falam por si só. Viram como é bem simples? Ao clicar no botão, você deverá ver o resultado parecido com o da Figura 01 (note a URL).


Figura 01 – Url Amigável para o detalhe do produto

Ao voltar para a aplicação o Visual Studio irá exibir uma mensagem informando a você que o Web.Config foi alterado, é só clicar em Yes e conferir a alteração na chave urlMapping, ilustrado na Figura 02.


Figura 02 – Url Amigável adicionada ao Web.Config

Assim finalizo o artigo. Muito obrigado a todos!

Um abraço, e até o próximo artigo.

Wellington Balbo de Camargo

wellingtonbalbo@gmail.com

Wellington Balbo De Camargo
Tecnólogo em Análise de Sistemas, atua na área de Desenvolvimento .NET com aplicações Web a 2 anos, onde trabalha atualmente com a linguagem C# usando a tecnologia ASP.NET, no desenvolvimento em camadas usando o banco de dados SQL Server. Procura estudar cada vez mais para melhorar os conheciment...
O que você achou deste post?

    0 COMENTÁRIO

[Fechar]

Este post é fechado - você precisa ter acesso ao post para incluir um comentário.


Nenhum comentário foi postado - seja o primeiro a comentar!
Cursos relacionados
Publicidade
[Fechar]

Você precisa estar logado para dar um feedback.

Clique aqui para efetuar o login
[Fechar]


Este post está fechado. Saiba mais sobre a assinatura MVP!
web-03
DevMedia  |  Anuncie  |  Fale conosco
Hospedagem web por Porta 80 Web Hosting
2013 - Todos os Direitos Reservados a web-03