Определить размер страницы через HttpModule - PullRequest
4 голосов
/ 09 сентября 2008

Вот простой для вас:

В настоящее время я регистрирую длительность запроса через HttpModule, и я хотел бы узнать, сколько байтов также имеется на каждой странице.

HttpContext.Current.Response.OutputStream.Length бросает NotSupportedException.

Какой простой способ сделать это?

1 Ответ

3 голосов
/ 09 сентября 2008

У меня есть HttpModule, который реализует потоковое переписывание. Это происходит от класса Stream. В моем HttpModule у меня есть следующий код:

void app_PreRequestHandlerExecute(object sender, EventArgs e)
{
    HttpResponse response = HttpContext.Current.Response;
    response.Filter = new MyRewriterStream(response.Filter);
}

В классе потока у меня есть следующий код, который переопределяет метод записи по умолчанию:

public override void Write(byte[] buffer, int offset, int count)
{
     string outStr;
     outStr = UTF8Encoding.UTF8.GetString(buffer, offset, count);
     //Do useful stuff and write back to the stream
}

Вы можете просто взять длину строки во второй точке

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...