Como registrar a solicitação de entrada com o HttpModule e redefinir a posição do InputStream

Eu estou tentando registrar o conteúdo de uma solicitação http, usando um IHttpModule da seguinte forma:

public class LoggingModule : IHttpModule
{
    public void Init(HttpApplication context)
    {
        context.BeginRequest += ContextBeginRequest;
    }

    private void ContextBeginRequest(object sender, EventArgs e)
    {
        var request = ((HttpApplication)sender).Request;
        string content;

        using (var reader = new StreamReader(request.InputStream))
        {
            content = reader.ReadToEnd();
        }

        LogRequest(content)
    }
}

O problema é que depois de ler o fluxo de entrada até o final, o InputStream parece ter desaparecido ou mais provável, o cursor está no final do fluxo.

eu tenteirequest.InputStream.Position = 0; erequest.InputStream.Seek(0, SeekOrigin.Begin); mas nem trabalho.

questionAnswers(6)

yourAnswerToTheQuestion