- ASP.NET 2.0의 특징
¢ 생산성의 획기적인 향상
대폭적인 코드량의 감소(75% 가량 감소됨)
엄청난 규모의 서버 컨트롤 지원
가장 빠른 웹 서버 플랫폼 제공
어플리케이션 가동시간의 향상
보다 나은 추적, 성능 제공
막강해진 캐싱 기능
보다 쉽고 세련된 운영과 관리 기능
¢ 더욱 쉬어진 배포
- ASP.NET 1.X Code Model
¢ ASP.NET 1.x 시절의 코드 모델의 문제점
상속의 복잡성
¢ 코드 비하인드 파일은 ASPX 페이지와 동기적으로 동작한다
¢ ASPX 페이지에 컨트롤이 추가될 경우, 코드 비하인드에도 코드가 추가되어야 한다
컴파일의 복잡성
¢ ASPX는 첫 요청이 들어오는 경우, 런타임 시에 컴파일되어, 임시 어셈블리로 컴파일된다
¢ 문제는 배포 후, ASPX를 변경하는 경우 예기치 않은 예외를 발생시킬 수 있다는 것이다
- ASP.NET 2.0 Code Model
¢ ASP.NET 2.0에서는 코드 비하인드 파일을 상속되는 형식이 아닌 확장되는 형식으로 바꿈
¢ 새로운 개념인 Partial(Expands) class 사용
¢ 코드 비하인드는 더 이상 ASPX에 정의된 컨트롤들을 정의하거나 지원할 필요가 없다
- 코드 비하인드 파일의 비교(1.x)
namespace WebApplication1
{
public class WebForm1 : System.Web.UI.Page
{
protected System.Web.UI.WebControls.Label Label1;
private void Page_Load(object sender, System.EventArgs e)
{
Label1.Text = "Hello ASP.NET 1.x";
}
#region Web Form Designer generated code
override protected void OnInit(EventArgs e)
{
InitializeComponent();
base.OnInit(e);
}
private void InitializeComponent()
{
this.Load += new System.EventHandler(this.Page_Load);
}
#endregion
}
}
- 코드 비하인드 파일의 비교 2.0
namespace WebApplication1
{
public partial class Webform1_aspx
{
void Page_Load(object sender, EventArgs e)
{
Label1.Text = "Hello ASP.NET 2.0";
}
}
}
¢ ASP.NET 2.0에서는 ASP.NET 런타임이 자동으로 이벤트를 연결한다.
- ASP.NET 2.0의 새로운 기능
l 마스터 페이지의 개념 도입
l 서버 컨트롤들의 강력한 보강
l 보안관련 서버 컨트롤들의 지원
l 더욱 쉬어진 데이터 처리, 데이터베이스 접근
l 사용자의 상세정보 저장을 위한 Profile 기능 제공
- Master Pages
¢ 마스터 페이지 (.master)
페이지 레이아웃을 포함하는 구조
유연하고 재사용 가능한 UI를 가능하게 한다
중첩된 마스터 페이지 사용 가능
¢ 컨텐트 페이지(.aspx)
마스터 페이지 지정 시, 부모 UI를 상속받음
<asp:content> 구역 안에 본문이 위치해야 함
Master 속성을 통해 부모 마스터에 접근 가능
- 테마(Theme)와 스킨(Skin)
¢ 테마는 Skins라는 컨트롤 디자인과 함께 동작한다
¢ Skin : 컨트롤에 적용되는 템플릿들의 집합
¢ Theme : Skin 및 관련된 파일들의 집합
¢ 테마는 CSS와는 다르다
테마는 기존 설정을 덮어쓰게(overwrite) 된다
- VS.NET 2005
¢ 향상된 코드 비하인드(Code-beside) 모델 지원
¢ 새로운 데이터 바인딩 모델을 지원
¢ 마스터 페이지를 통한 비주얼 상속 지원
¢ 내장 ASP.NET 웹 서버 제공
개발 및 테스트를 위해 IIS가 요구되지 않음
VS가 종료될 때 자동으로 셧 다운
¢ 웹 사이트 전송
원격 서버로 웹 사이트를 쉽게 동기화/전송

asp.pptx