Como acessar os objetos do ASP.NET dentro de componentes VB.NET

 

É comum, em uma página ASP.NET, dispararmos classes e componentes criados em VB.NET para realizarem operações de negócio.

Mas eventualmente pode ocorrer desses componentes/classes precisarem acessar informações do ASP.NET. A questão é : Isso é possivel ? Sim !

Um componente consegue ver uma classe chamada HTTPCONTEXT. Através desta classe HTTPCONTEXT podemos obter outras classes para manipular os objetos do ASP.NET, tal como SESSION, APPLICATION, RESPONSE, REQUEST, etc.

Para usarmos mais facilmente a classe HTTPCONTEXT precisamos de um imports para system.web. Para o objeto de sessão precisaremos de um imports para system.web.SessionState.

 

Imports System.Web

Imports System.Web.SessionState

 

Public Sub TestHttpContext()

 

Dim objHttpContext As HttpContext

Dim objHttpResponse As HttpResponse

Dim objHttpRequest As HttpRequest

Dim objHttpApplication As HttpApplicationState

Dim objhttpSession As HttpSessionState

Dim strUserAgent As String

 

' Obtém o atual contexto da aplicação web

objHttpContext = HttpContext.Current()

 

' Obtém o objeto application

objHttpApplication = objHttpContext.Application

 

' Obtém o objeto Session

objhttpSession = objHttpContext.Session

 

' Obtém o objeto respose

objHttpResponse = objHttpContext.Response

 

' Obtém o objeto Request

objHttpRequest = objHttpContext.Request

 

' Aqui entraria o seu código

End Sub

 

Neste exemplo atribuímos os objetos a variáveis e posteriormente entraria o código para manipular esses objetos como for necessário. Claro que você não precisa utilizar todos, pode utilizar apenas aqueles dos quais realmente necessitar.