Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Knigth Rider

Url para Web 2.0

Recommended Posts

Li em um artigo sobre asp.net aqui no IMAsters sobre a utilização do IHttpModule para se exibir urls mais amigaveis no lugar dos parametros de pesquisa para querystring, porem o mesmo estava em C#, e ao tentar converter para VB.Net, que é linguagem com a qual eu tenho maior facilidade, teve alguns problemas, gostaria de saber se algum colunista de asp.net não poderia fazer tal adaptação e postar aqui no forum, acredito que ajudaria a mim e a muitos colegas, tambem se algum colega do forum que tiver maior facilidade nessas adaptações, conseguir fazer eu agredeceria.

Obrigado

 

P.S.: Utilizei conversores de c# para vb.net e estou utlizando o VWD 2008

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bruno, obrigado, consegui migrar o código, estou tentando resolver um pequeno problema que surgiu devido as urls relativas no controle menu, mas vou postar o código migrado para VB para outros colegas que se interessarem, acho valido.

Compartilhar este post


Link para o post
Compartilhar em outros sites

No dia 13 de março de 2007 o Colunista Ramon Durães postou um artigo intutulado Criando urls pra Wweb 2.0, sendo o artigo destinado a "mascarar", ou simplificar o as urls para arquivos com parametros fazendo com que os parametro passem a ser representados como se fosse urls, espero que a esplicação esteja proxima do esperado pelo autor, o artigo o código está em C#, sendo que o mesmo não funciona quando o site está sendo desenvolvido em VB.Net segue abaixo o código convertido para VB.Net, espero ter ajudado!

 

____________________________________________________________

 

Arquivo tipo Class: ProfessionalComputing.goUrl.vb

Imports Microsoft.VisualBasicImports SystemImports System.DataImports System.ConfigurationImports System.WebImports System.Web.SecurityImports System.Web.UIImports System.Web.UI.WebControlsImports System.Web.UI.WebControls.WebPartsImports System.Web.UI.HtmlControlsNamespace ProfessionalComputing	Public Class goUrl		Implements IHttpModule		Public Sub Dispose() Implements System.Web.IHttpModule.Dispose		End Sub		Public Sub Rewrite_BeginRequest(ByVal s As Object, ByVal e As EventArgs)			Try				ProfessionalComputing.Util.VerificaUrl.CheckUrl(DirectCast(s, HttpApplication))			Catch ex As Exception				Throw New Exception("Falha tratando url")			End Try					End Sub		Public Sub Init(ByVal app As HttpApplication) Implements System.Web.IHttpModule.Init			AddHandler app.BeginRequest, AddressOf Rewrite_BeginRequest		End Sub	End ClassEnd Namespace
________________________________________________________________________

 

arquivo tipo class:ProfessionalComputing.Util.VerificaUrl.vb

Imports Microsoft.VisualBasicImports SystemImports System.DataImports System.ConfigurationImports System.WebImports System.Web.SecurityImports System.Web.UIImports System.Web.UI.WebControlsImports System.Web.UI.WebControls.WebPartsImports System.Web.UI.HtmlControlsNamespace ProfessionalComputing.Util	Public Class VerificaUrl		Public Shared Sub CheckUrl(ByVal app As HttpApplication)			Dim origem As String = app.Request.Path.ToString().ToLower()			Dim urlsite As String = app.Request.ApplicationPath			If origem.IndexOf("materia") > -1 Then				Dim parametros As String() = origem.Split("/")				Dim codigo As String = parametros(3) ' você pode obtem na string origem				app.Context.RewritePath((urlsite + "/materias.aspx?art=" + codigo))			End If		End Sub 'CheckUrl	End Class 'VerificaUrlEnd Namespace 'ProfessionalComputing.Util
incluir no Web.Config

<httpModules><add type="ProfessionalComputing.goUrl,WebRewrite" name="goUrl" /></httpModules>
____________________________________________________________________

 

Link para o artigo original:

 

http://imasters.com.br/artigo/5682/asp...rls_pra_web_20/

Compartilhar este post


Link para o post
Compartilhar em outros sites

No caso de ter mais de uma página, tipo materia.aspx escritorio.aspx, processo.aspx eu teria que fazer várias CheckUrl para tratar cada url diferente ou não

No dia 13 de março de 2007 o Colunista Ramon Durães postou um artigo intutulado Criando urls pra Wweb 2.0, sendo o artigo destinado a "mascarar", ou simplificar o as urls para arquivos com parametros fazendo com que os parametro passem a ser representados como se fosse urls, espero que a esplicação esteja proxima do esperado pelo autor, o artigo o código está em C#, sendo que o mesmo não funciona quando o site está sendo desenvolvido em VB.Net segue abaixo o código convertido para VB.Net, espero ter ajudado!

 

____________________________________________________________

 

Arquivo tipo Class: ProfessionalComputing.goUrl.vb

Imports Microsoft.VisualBasicImports SystemImports System.DataImports System.ConfigurationImports System.WebImports System.Web.SecurityImports System.Web.UIImports System.Web.UI.WebControlsImports System.Web.UI.WebControls.WebPartsImports System.Web.UI.HtmlControlsNamespace ProfessionalComputing	Public Class goUrl		Implements IHttpModule		Public Sub Dispose() Implements System.Web.IHttpModule.Dispose		End Sub		Public Sub Rewrite_BeginRequest(ByVal s As Object, ByVal e As EventArgs)			Try				ProfessionalComputing.Util.VerificaUrl.CheckUrl(DirectCast(s, HttpApplication))			Catch ex As Exception				Throw New Exception("Falha tratando url")			End Try					End Sub		Public Sub Init(ByVal app As HttpApplication) Implements System.Web.IHttpModule.Init			AddHandler app.BeginRequest, AddressOf Rewrite_BeginRequest		End Sub	End ClassEnd Namespace
________________________________________________________________________

 

arquivo tipo class:ProfessionalComputing.Util.VerificaUrl.vb

Imports Microsoft.VisualBasicImports SystemImports System.DataImports System.ConfigurationImports System.WebImports System.Web.SecurityImports System.Web.UIImports System.Web.UI.WebControlsImports System.Web.UI.WebControls.WebPartsImports System.Web.UI.HtmlControlsNamespace ProfessionalComputing.Util	Public Class VerificaUrl		Public Shared Sub CheckUrl(ByVal app As HttpApplication)			Dim origem As String = app.Request.Path.ToString().ToLower()			Dim urlsite As String = app.Request.ApplicationPath			If origem.IndexOf("materia") > -1 Then				Dim parametros As String() = origem.Split("/")				Dim codigo As String = parametros(3) ' você pode obtem na string origem				app.Context.RewritePath((urlsite + "/materias.aspx?art=" + codigo))			End If		End Sub 'CheckUrl	End Class 'VerificaUrlEnd Namespace 'ProfessionalComputing.Util
incluir no Web.Config
<httpModules><add type="ProfessionalComputing.goUrl,WebRewrite" name="goUrl" /></httpModules>
____________________________________________________________________

 

Link para o artigo original:

 

http://imasters.com.br/artigo/5682/asp...rls_pra_web_20/

 

 

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.