본문 바로가기

2016/12

[ASP.NET] 캐시 - 1 1. 출력캐시(Output Cache) 출력캐시는 페이지의 컨텐츠 내용을 서버의 메모리나 디스크에 저장하고 사용자가 해당 페이지를 다시 요청하는 저장한 내용을 반환해주는 방법입니다. 동적으로 생성된 페이지의 경우에도 최종 렌더링이후의 내용을 저장하고 사용자에게 반환합니다. 특정 페이지에 출력캐시를 지정하려면 다음과 같이 OutputCache선언문을 사용합니다. Duration은 캐시가 저장될 시간을 설정합니다. 해당 시간이 지나면 저장된 컨텐츠는 만료됩니다. 시간단위는 '초'입니다. 1. VaryByParam 페이지가 호출될때 다음과 같은 형식으로 페이지가 호출된다고 가정해 보겠습니다. http://www.testsite.com/default.aspx?userid=cliel default.aspx페이지는.. 더보기
[ASP.NET] 서버 컨트롤 - 5 (포스트백처리) 서버 컨트롤에서 페이지에 포스트백 이벤트를 발생시키려면 우선 GetPosBackEventReference 메소드를 사용해 클라이언트에 포스트백을 일으키는 스크립트를 생성해야 합니다. protected override void RenderContents(HtmlTextWriter output) { PostBackOptions pbo = new PostBackOptions(this); output.AddAttribute(HtmlTextWriterAttribute.Onclick, Page.ClientScript.GetPostBackEventReference(pbo)); output.AddAttribute(HtmlTextWriterAttribute.Id, "btn_" + this.ClientID); output.. 더보기
[ASP.NET] 서버 컨트롤 - 4 (ControlState) ViewState와 비슷한 개념의 ControlState는 컨트롤에만 사용할 수 있는 것으로 ViewState가 비활성상태라 하더라도 아무런 영향을 받지 않고 컨트롤에서 데이터를 저장할 수 있는 기능을 유지할 수 있습니다. protected override void OnInit(EventArgs e) { Page.RegisterRequiresControlState(this); base.OnInit(e); } ControlState사용을 위해서는 우선 RegisterRequiresControlState메소드를 호출해야 합니다. 예제에서 이 메소드는 컨트롤의 OnInit메소드를 재정의하여 구현하였습니다. protected override void LoadControlState(object dataState).. 더보기
[ASP.NET] 서버 컨트롤 - 3 (스크립트처리) 서버 컨트롤을 통해 페이지 하단에 스크립트를 출력하려면 RegisterStartupScript 메소드를 사용합니다. protected override void OnPreRender(EventArgs e) { Page.ClientScript.RegisterStartupScript(typeof(Page), "alert", "alert('aaa');", true); } RegisterStartupScript 메소드를 사용할때는 두번째 인자에 스크립트 식별키를, 세번째 인자에 스크립트 본체를 전달합니다. 식별키는 등록하려는 스크립트를 구분하기 위한 키로서 IsStartupScriptRegistered 메소드등으로 특정 스크립트가 등록되어 있는지 여부를 확인할 수 있는 방법을 제공합니다. 네번째 인자에는 true.. 더보기