viernes, 24 de octubre de 2008

urlrewrite para .net

 

bueno pensaran que esto es dificil pero nada que ver es muy facil.

 

solo tienen que bajar el control en

http://rapidshare.com/files/157028378/UrlRewritingNet.UrlRewriter.dll.html

y asociarlo a su proyecto (add reference)

 

despues tienes que entrar al webconfig y en dentro del tag configuration declarlo

<configSections>

<section name="urlrewritingnet" requirePermission="false" type="UrlRewritingNet.Configuration.UrlRewriteSection, UrlRewritingNet.UrlRewriter"/>

</configSections>

despues de eso tienes que a agregar las reglas por ejemplo

 

queremos traducir una pagina por ejemplo

automovil.aspx?id=1 seria

agregas

<urlrewritingnet rewriteOnlyVirtualUrls="true" contextItemsPrefix="QueryString" defaultPage="default.aspx" defaultProvider="RegEx" xmlns="http://www.urlrewriting.net/schemas/config/2006/07">
        <rewrites>

<add name="Rewrite" virtualUrl="^~/(.*)_vehiculo_-(.*).aspx" rewriteUrlParameter="ExcludeFromClientQueryString" destinationUrl="~/ficha.aspx?id=$1" ignoreCase="true"/>

</rewrites>

 

fijate el (.*) es la primera variable que se pasara osea la id

fijate en destinacion url que se llama la $1 ese sera el valor pasado entonces

 

cada vez que llege la url

123_vehiculo_-blalbalba.aspx

123 sera el valor que se pasara automaticamente como id

y el urlrewrite hara la conversion

si quieres agregar otra variable id2 en este caso seria por ejemlo

automovil.aspx?id=123?id2=456 y el siguiente (.*) seria la id2

la url escrita seria

 

123_vehiculo_-1234_blalbalba.aspx

 

<add name="Rewrite" virtualUrl="^~/(.*)_vehiculo_-(.*).aspx" rewriteUrlParameter="ExcludeFromClientQueryString" destinationUrl="~/ficha.aspx?id=$1?id=$2" ignoreCase="true"/>

No hay comentarios: