Как записать запрос inputtream с помощью HttpModule, затем сбросить позицию InputStream
Я пытаюсь записать содержимое HTTP-запроса, используя IHttpModule следующим образом:
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)
}
}
Проблема в том, что после чтения входного потока до конца InputStream, похоже, либо исчез, либо, что более вероятно, курсор находится в конце потока.
я пыталсяrequest.InputStream.Position = 0;
а такжеrequest.InputStream.Seek(0, SeekOrigin.Begin);
но ни работа.