Response 이전에는 HttpModule을 사용하여 쿠키를 변경하곤 했습니다. 오늘은 Asp.net이 주도적으로 한자를 변환하는 것을 만났습니다. ꪻ Asp.net의 웹 컨트롤은 말할 것도 없고 한자로 변환하기 위해 열심히 노력했습니다. Ranat=server는 강제로 한자로 변환되어 출력됩니다.
Response를 사용하여 페이지 내용을 한 줄씩 작성하면 너무 피곤하고 오류가 발생하기 쉽습니다. 따라서 가장 좋은 방법은 Asp.net의 생성 작업이 완료된 후 다른 변환을 수행하여 Asp.net이 사용자와 관련이 없도록 하는 것입니다.
Asp.net의 모든 생성 작업은 Render 메서드에서 완료되므로 Render 메서드에서 작업을 수행합니다.
보호된 재정의 무효 렌더링(HtmlTextWriter 작가)
{
StringWriter sw = 새로운 StringWriter();
HtmlTextWriter htmlw = new HtmlTextWriter(sw);
//페이지의 생성된 콘텐츠를 꺼냅니다.
base.Render(htmlw);
htmlw.Flush();
htmlw.Close();
string pageContent = sw.ToString();
//내용 수정
pageContent = KillTheBugAndShit(pageContent)
Response.Write(pageContent);
//base.Render (작성기);
}
이 방법을 사용하면 페이지에서 생성된 콘텐츠를 꺼내고 사용할 정적 페이지를 생성할 수도 있습니다.
(작년에 이런 내용으로 글을 쓴 것 같은데...기억이 안나네요)