Pergunta

Eu tenho um httpmodule simples que faz algum gerenciamento de estado de sessão personalizado.

public void Init(HttpApplication context)
        {
            context.AcquireRequestState += new EventHandler(ProcessBeginRequest);
            ActivityLogger.LogInfo( DateTime.UtcNow.ToLongTimeString() + " In Init " + HttpContext.Current.Request.Url.AbsoluteUri);
        }

e

public void ProcessBeginRequest(object sender, EventArgs e)
        {
            HttpApplication application = sender as HttpApplication;
            ActivityLogger.LogInfo(DateTime.UtcNow.ToLongTimeString() + " In ProcessBeginRequest ");
            if (application != null)
            {
                string requestURL = application.Context.Request.Url.ToString();
                ActivityLogger.LogInfo(DateTime.UtcNow.ToLongTimeString() + " In ProcessBeginRequest " + requestURL);
            }
            return;
        }

Quando executei esse código com pontos de interrupção, vi que esse módulo foi invocado mesmo para arquivos estáticos como imagens, JS e CSS. Alguém já passou por isso ? Estou pensando que os módulos HTTP estavam apenas conectando a eventos no pipeline HTTP para as páginas do ASP.NET. Eles também se conectam aos recursos estáticos? Ou é apenas com Cassini?

Ambiente: VS2008 - Servidor Cassini

PS: Eu tentei com Win2K8 IIS7 em nossa caixa de areia (meio novo) e tentei escrevê -lo em um arquivo de log (como não temos vs lá), mas não consegui gravar no arquivo de log. Tenho certeza de que é uma questão de permissões de gravação. Alguém pode me apontar para algum recurso que me diga como definir permissões de gravação para diretórios ao executar asp.net com iis7 em w2k8

EDIT1: Entendo que o uso de pipeline integrado estenderia os pipelines HTTP para recursos estáticos e gerenciadoshttp://aspnet.4guysfromrolla.com/articles/122408-1.aspx e http://learn.iis.net/page.aspx/243/aspnet-integration-with-iis7/

Estamos usando o pipeline clássico em nosso produto. Mas ainda interessado em saber o que outras pessoas experimentaram.

PERGUNTA2: Usando o IIS7 no modo integrado, ele diminuirá o desempenho? Digamos que você tenha alguns módulos com o oleoduto, quanto seria o impacto do desempenho? Seria bom se alguém pudesse me indicar alguns estudos de linha de base feitos para isso.

Foi útil?

Solução

Outras dicas

Sim, ele será chamado para qualquer tipo de arquivo.

É típico nesses módulos filtrar o que você não está interessado no Ex. Verificando se httpcontext.request.url.absolutepath contém '/_layouts' no SharePoint.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top