응답에이 숫자를 쓸 수 있도록 ASP.NET 2.0 응답의 특정 지점까지 보낸 바이트 수를 얻는 방법을 찾고 있습니다.HttpResponse 크기를 얻는 방법
Page.aspx : 같은 뭔가
<script runat="server">
private string GetResponseSize()
{
int nCurrentResponseSize = ...; // what goes here?
return (nCurrentResponseSize.ToString());
}
</script>
<html>
<head runat="server"><title>test</title></head>
<body>
<div>Size 1: <%= GetResponseSize() %></div>
<br />
<div>Size 2: <%= GetResponseSize() %></div>
</body>
</html>
문제는 HttpResponse.OutputStream.Length
이 (NetworkStream를 지원하지 않는)가 지원되지 않는 것입니다.
HtmlTextWriter
을 구현하여 페이지의 기본 바이트 및 계산 바이트를 무시할 수 있지만 ASP.NET 내부에 이미 개수가 있어야하며 가져올 수 있는지 확인하려고합니다.
내가 피하고 싶은 것은 모든 데이터를 가져 와서 특정 지점까지 파싱하여 그 지점까지 크기를 찾는 것입니다. 지금까지 대부분의 검색 결과에서 이러한 종류의 솔루션 만 나타났습니다.
응답 해 주셔서 감사합니다. 불행히도 리플렉션은 실제로 옵션이 아닙니다. 어쨌든 내가 그걸로 뭔가를 배울 수 있는지 확인해 보겠습니다. 문자 수나 바이트 수를 유지하는지 궁금합니다. – xxbbcc
1) 왜 이걸 필요로하는지 물어봐도 될까요? –
2) 리플렉션은 순수하게 액세스의 맥락에서 느리지 만 파일 또는 데이터베이스에 액세스하는 데이터 기반 웹 사이트의 전체 컨텍스트에서 우리는 전체 페이지 처리 시간 중 아주 작은 부분을 말하고있을 것입니다. –