BT

Suporte a roteamento bi-direcional no ASP.NET Web Forms 4.0

| por Jon Arild Tørresdal , traduzido por Flávia Castro de Oliveira em 19 mar 2009. Tempo estimado de leitura: 1 minuto |

O ASP.NET Routing engine foi adicionado no .NET Framework 3.5 SP1. Agora a Microsoft adicionou o melhor suporte para o uso do engine no ASP.NET WebForms 4.0 usando expression builders permitindo o roteamento bi-direcional.

Channel9 apenas publicou um novo episódio 10-4 mostrando como usar esta nova funcionalidade no ASP.NET 4.0. No vídeo Jonathan Carter caminha através de um simples exemplo de como permitir isto em uma aplicação ASP.NET existente.

Abaixo está um resumo do código mostrado no vídeo. Eles usam o típico exemplo de como o Product.aspx?category=jerseys pode mapear o Product/Jerseys. Usando o ASP.NET Routing engine este mapeamento pode ser adicionado usando o RouteTable na Application_Start:

RouteTable.Routes.Add("Product",
new Route("Product/{name}",
new PageRouteHandler("~/Product.aspx")));

Para adicionar o suporte ao roteamento bi-direcional hoje, os usuários terão de usar URL rewriting na string de query. Entretanto, no ASP.NET 4.0 os usuários podem registrar o expression builder:

<system.web>
<compilation>
<expressionBuilders ...>
<add expressionPrefix="RouteUrl"
type="System.Web.Compilation.RouteUrlExpressionBuilder" />

<add expressionPrefix="RouteValue"
type="System.Web.Compilation.RouteValueExpressionBuilder" />
</expressionBuilders>
</compilation>
</system.web>

A primeira expression é para receber uma URL e a segunda e para receber um valor. O sinal $ é usado para acessar expressions de uma página aspx:

<asp:HyperLink NavigationUrl="<%$ RouteUrl:RouteName=Product, name=Jerseys"
     Text="Jerseys"
     runat="server" />

Para receber o valor do nome do atributo, os usuários usam o Route object em vez do Request object:

RouteData.Values["name"];

ou usam uma expression builder:

<%$ RouteValue:name %>

Ao usar o ASP.NET Routing e o novo suporte bi-direcional os usuários podem desassociar as URLs de um Web Form físico, permitindo URLs amigáveis e permitir que search engines possam identificá-las.

Avalie esse artigo

Relevância
Estilo/Redação

Olá visitante

Você precisa cadastrar-se no InfoQ Brasil ou para enviar comentários. Há muitas vantagens em se cadastrar.

Obtenha o máximo da experiência do InfoQ Brasil.

Dê sua opinião

HTML é permitido: a,b,br,blockquote,i,li,pre,u,ul,p

Receber mensagens dessa discussão
Comentários da comunidade

HTML é permitido: a,b,br,blockquote,i,li,pre,u,ul,p

Receber mensagens dessa discussão

HTML é permitido: a,b,br,blockquote,i,li,pre,u,ul,p

Receber mensagens dessa discussão

Dê sua opinião

Faça seu login para melhorar sua experiência com o InfoQ e ter acesso a funcionalidades exclusivas


Esqueci minha senha

Follow

Siga seus tópicos e editores favoritos

Acompanhe e seja notificados sobre as mais importantes novidades do mundo do desenvolvimento de software.

Like

Mais interação, mais personalização

Crie seu próprio feed de novidades escolhendo os tópicos e pessoas que você gostaria de acompanhar.

Notifications

Fique por dentro das novidades!

Configure as notificações e acompanhe as novidades relacionada a tópicos, conteúdos e pessoas de seu interesse

BT