저자 서문 ... 4 이 책의 학습 로드맵 ... 6 1 What's new in ASP.NET 2.0? 01. ASP.NET 2.0의 새로운 특징들 ... 18 생산성 ... 19 유지 및 관리 ... 26 퍼포먼스 ... 28 확장성 ... 29 02. ASP.NET 2.0의 아키텍처 정리 ... 31 2 개발 도구와 개발 언어 01. Visual Studio .NET 2005 ... 34 웹 사이트 만들기 & 웹 사이트 열기 ... 36 개발 환경 둘러보기 ... 40 페이지와 컨트롤 편집하기 ... 41 특별한 용도의 디렉터리들 ... 44 어셈블리 참조하기 ... 45 페이지 실행 ... 46 02. C 2.0의 새로운 특징들 ... 48 제네릭(Generics) ... 49 반복기(Iterators) ... 61 Nullable 형식 ... 68 무명 메서드(Anonymous methods) ... 70 partial 클래스 ... 74 3 페이지 프레임워크 (1) 01. 새로운 페이지 지시자 ... 82 Page 지시자의 추가된 특성 ... 82 추가된 지시자 ... 85 02. 코드 인라인(code-inline) vs. 코드 비하인드(code-behind) ... 89 코드 인라인(단일 페이지) ... 90 코드 비하인드 ... 93 03. bin 디렉터리와 App_Code 디렉터리 ... 99 bin 디렉터리 ... 99 App_Code 디렉터리 ... 103 04. Page 클래스의 새 속성들 ... 110 Header 속성 ... 112 Items 속성 ... 117 05. 페이지 사이의 상태 보존 ... 120 페이지 간 포스트백(Close-Page Postback) ... 120 Transfer와 Execute 메서드 사용하기 ... 129 4 마스터 페이지 01. 마스터 페이지의 기본 ... 138 마스터 페이지란 ... 138 간단한 마스터 페이지 만들기 ... 140 02. 중첩된 마스터 페이지 ... 148 중첩된 마스터 페이지란 ... 148 중첩된 마스터 페이지 구성하기 ... 149 03. 마스터 페이지에서의 프로그래밍 ... 154 내용 페이지에서 코딩하기 ... 154 마스터 페이지에서 코딩하기 ... 156 내용 페이지에서 마스터 페이지의 컨트롤 액세스 ... 157 마스터 페이지의 공유 속성 액세스 ... 160 Master Page 클래스의 속성 ... 163 04. [응용 예제] 마스터 페이지를 이용한 인쇄 페이지 ... 178 5 스킨과 테마 01. 테마란 ... 194 02. 테마 사용하기 ... 196 페이지로 테마 적용하기 ... 198 응용 프로그램 수준으로 테마 적용하기 ... 198 서버 수준으로 테마 적용하기 ... 199 응용 프로그램에서 테마 재설정하기 ... 200 페이지 수준에서 테마 재설정하기 ... 200 특정 컨트롤에만 테마를 적용하지 않기 ... 201 03. 테마 작성하기 ... 202 스킨 파일의 제작 ... 203 CSS 스타일시트 작성하기 ... 207 이미지 파일 사용하기 ... 213 SkinID 속성 사용하기 ... 218 04. 테마 심화 학습 ... 221 Theme vs. StylesheetTheme ... 221 하나의 테마 안에서 여러 개의 스킨 파일을 사용하기 ... 222 동적으로 테마 변경하기 ... 223 동적으로 컨트롤의 SkinID 변경하기 ... 226 동적으로 생성된 컨트롤에 페이지 테마 설정하기 ... 228 6 데이터베이스 액세스 (1) 01. 새로운 데이터 바인딩 모델 ... 234 두 가지 데이터 바인딩 모델의 비교 ... 234 02. SQL Server Express ... 239 로컬 데이터베이스 ... 240 서버 데이터베이스 ... 243 연결 문자열 만들기 ... 255 03. 데이터 소스 컨트롤을 이용하여 데이터 바인딩하기 ... 257 연결 문자열 준비하기 ... 259 SqlDataSource의 기본 ... 260 SqlDataSource로 데이터 필터링하기 ... 266 데이터 원본을 이용한 캐시 ... 286 04. 테마에 템플릿 저장하기 ... 299 7 데이터베이스 액세스 (2) 01. 데이터 바운드 컨트롤의 기본 ... 304 GridView 컨트롤 ... 304 DetailsView 컨트롤 ... 309 FormView 컨트롤 ... 314 02. 정렬과 페이징 ... 316 정렬과 페이징 및 선택 예제 ... 316 페이저 관련 속성 변경하기 ... 319 PagerTemplate 사용하기 ... 322 03. 마스터/세부 사항(Master/Detail) ... 332 테이블 간에 종속 관계 만들기 ... 332 두 페이지 간에 종속 테이블 만들기 ... 337 각 행마다 종속된 테이블 만들기 ... 340 04. 데이터 수정/삭제/추가하기 ... 353 간단하게 수정/삭제 기능 구현하기 ... 353 수정과 삭제 시 사용되는 파라미터의 이해 ... 357 템플릿과 양방향 데이터 바인딩 ... 375 DetailsView를 이용한 데이터 추가 ... 378 8 데이터베이스 액세스 (3) 01. ObjectDataSource 컨트롤의 소개 ... 390 ObjectDataSource 사용의 기초 ... 392 02. 여러 가지 비즈니스 메서드 작성하기 ... 398 SelectMethod에 지정된 메서드 작성하기 ... 398 UpdateMethod와 DeleteMethod에 지정된 메서드의 작성법 ... 426 개체를 이용한 데이터의 전달 ... 445 9 웹 서버 컨트롤 01. 기존 컨트롤의 새로운 특징들 ... 468 Label ... 468 TextBox ... 470 Image ... 472 Button/LinkButton/ImageButton ... 474 CheckBox ... 477 Calendar ... 480 ListControl ... 483 Panel ... 485 AdRotator ... 487 Literal ... 491 02. 새로 추가된 컨트롤들 ... 493 BulletedList ... 493 ImageMap ... 496 FileUpload ... 500 HiddenField ... 504 MultiView와 View ... 505 Wizard ... 509 10 유효성 검사 컨트롤 & 입력 컨트롤 01. 새로 추가된 특징들 ... 536 입력 포커스/기본 버튼 설정 ... 536 CausesValidation 속성 ... 540 유효성 검사 ... 543 02. 유효성 검사 컨트롤 깊이 알기 ... 559 Page 클래스의 유효성 검사 관련 멤버들 ... 559 혼동되는 부분들 ... 565 클라이언트 API ... 568 11 멤버십(Membership)과 역할(Role) 시스템 01. 멤버십과 역할 시스템의 기본 ... 582 멤버십 서비스 ... 583 역할 서비스 ... 587 준비 작업하기 ... 589 02. 멤버십 서비스와 역할 서비스 사용하기 ... 605 예제 페이지 준비하기 ... 606 사용자 데이터와 역할 데이터의 준비 ... 607 로그인하기 ... 609 접속자에 따라 다른 내용 출력하기 ... 626 암호 다루기 ... 630 새 사용자 추가하기 ... 635 사용자 정보 변경하기 ... 642 역할 API 사용하기 ... 650 03. 응용 예제 - 역할 기반 포럼 ... 666 역할 기반 포럼 둘러보기 ... 666 파일 구조 및 데이터베이스 테이블 ... 672 소스 분석 ... 674 12 사이트 탐색(Site Navigation) 01. 사이트 탐색의 기본 ... 740 사이트맵 파일 ... 740 Menu 컨트롤 ... 743 SiteMapPath 컨트롤 ... 745 TreeView 컨트롤 ... 746 사이트 탐색 구성 요소 간의 관계 ... 746 02. 사이트 탐색의 심화 ... 749 사이트 탐색 API ... 749 SiteMapPath 컨트롤 ... 763 Menu 컨트롤 ... 766 TreeView 컨트롤 ... 781 사이트맵 보안 트리밍 ... 787 URL 매핑 ... 796 03. 응용 예제 - 사이트 탐색 기능 추가하기 ... 798 사이트맵 파일의 작성과 마스터 페이지의 수정 ... 799 SiteMap.SiteMapResolve 이벤트 처리하기 ... 804 13 사용자 프로필 01. 프로필의 소개 ... 820 프로필이란? ... 820 프로필 스키마 ... 822 데이터 기록 방식 ... 824 프로필 실행 주기 ... 827 02. 프로필의 활용 ... 829 SqlProfileProvider 공급자 사용 준비 ... 829 프로필 속성 정의하기 ... 831 프로필 속성 그룹 짓기 ... 832 직렬화(Serialization)와 프로필 속성의 형식 ... 835 익명 사용자 ... 841 익명 데이터를 회원 데이터로 마이그레이션하기 ... 845 14 웹 파트(Web Parts) 01. 웰 파트의 소개 ... 850 웹 파트란? ... 850 웹 파트 사용 준비하기 ... 852 WebPartManager와 WebPartZone 컨트롤 ... 854 출력 모드와 사용자 설정 범위 ... 862 EditorZone 컨트롤 ... 871 CatalogZone 컨트롤 ... 876 02. 웹 파트의 심화 ... 887 WebPart 클래스 ... 887 사용자 정의 컨트롤의 심화 ... 893 WebPart 상속하기 ... 909 EditorPart 상속하기 ... 916 웹 파트 컨트롤을 프로그램 방식으로 추가/삭제/열기/닫기 ... 939 03. 응용 예제 ... 952 15 클라이언트 스크립트 01. ASP.NET에서의 클라이언트 스크립트 관리 ... 974 ASP.NET 2.0의 스크립트 관리 메서드 ... 975 Type 형식의 인자 ... 977 RegisterClientScriptInclude와 IsClientScriptIncludeRegistered 메서드 ... 980 02. 클라이언트 콜백 ... 983 클라이언트 콜백을 사용하는 페이지의 제작 과정 ... 983 클라이언트 콜백의 심화 ... 990 16 페이지 프레임워크 (2) 01. HTTP 파이프라인(pipeline) ... 1000 HttpRuntime ... 1001 HttpApplicationFactory ... 1001 HttpApplication ... 1001 IHttpHandlerFactory ... 1003 IHttpHandler ... 1004 02. 페이지 실행 모델과 컨트롤 트리 ... 1006 페이지 실행 모델의 개요 ... 1006 동적으로 생성되는 어셈블리와 소스 코드 ... 1007 동적으로 생성된 소스 코드 분석(컨트롤 트리) ... 1011 03. 페이지 수명 주기(Page Life Cycle) ... 1027 페이지 수명 주기의 단계별 특징 ... 1028 동적으로 생성한 컨트롤을 페이지에 추가하기 ... 1036 17 공급자 제작 01. 공급자 모델의 개요 ... 1040 공급자 모델 이해하기 ... 1042 ASP.NET 2.0의 공급자 모델 ... 1048 02. 특정 서비스에 대한 사용자 정의 공급자의 제작 ... 1071 사이트맵 공급자의 제작 ... 1073 사이트맵 공급자 예제(1) ... 1074 사이트맵 공급자 예제(2) ... 1121 부록 - 참고 문서 검색하는 방법 ... 1173 MSDN을 검색하는 방법 ... 1174 퀵 스타트 자습서의 활용 ... 1177 찾아보기 ... 1181