ASP.NET 세션 상태
ASP.NET 세션 상태를 사용하면 사용자가 웹 응용 프로그램을 구성하는 다른 ASP.NET 페이지로 이동할 때 사용자에 대한 값을 저장하고 검색할 수 있습니다. HTTP는 상태 비저장 프로토콜입니다. 즉, 웹 서버에서 페이지에 대한 각 HTTP 요청을 독립적인 요청으로 처리하기 때문에 기본적으로 서버에서는 이전 요청 도중 사용된 변수 값을 알지 못합니다. 따라서 장바구니, 데이터 스크롤 등을 구현하는 응용 프로그램처럼 요청 간 상태 정보를 유지해야 하는 웹 응용 프로그램을 빌드하는 것은 어려울 수 있습니다. ASP.NET 세션 상태는 제한된 기간 동안 동일한 브라우저에서 받은 요청을 세션으로 식별하고 이를 통해 해당 세션이 지속되는 동안 변수 값을 유지할 수 있도록 합니다.
ASP.NET 세션 상태는 기본적으로 모든 ASP.NET 응용 프로그램에 사용할 수 있습니다. ASP.NET 세션 상태 변수는 Session 속성을 사용하여 쉽게 설정하고 검색할 수 있습니다. 이 속성은 세션 변수 값을 이름으로 인덱싱된 컬렉션으로 저장합니다. 예를 들어, 다음 코드 예제에서는 사용자의 이름과 성을 나타내는 세션 변수 FirstName과 LastName을 만들고 해당 변수를 TextBox 컨트롤에서 검색한 값으로 설정합니다.
Session("FirstName") = FirstNameTextBox.Text
Session("LastName") = LastNameTextBox.Text
Session["FirstName"] = FirstNameTextBox.Text;
Session["LastName"] = LastNameTextBox.Text;
ASP.NET에서 세션 정보는 기본적으로 ASP.NET 응용 프로그램의 메모리 공간에 저장됩니다. 선택적으로, 독립 실행형 서비스를 사용하여 세션 정보를 저장하면 ASP.NET 응용 프로그램이 다시 시작될 경우에도 세션 정보가 유지되고, SQL 서버에 저장하면 웹 팜의 여러 웹 서버에서 세션 정보를 사용할 수 있으며 ASP.NET 응용 프로그램이 다시 시작될 경우에도 세션 정보가 유지됩니다. 사용자 지정 데이터 저장소에 세션 정보를 저장할 수도 있습니다. 자세한 내용은 세션 상태 모드를 참조하십시오.
ASP.NET에는 세션 상태 외에 응용 프로그램 내의 데이터도 유지하기 위한 다른 여러 옵션도 제공합니다. 각 옵션을 비교하려면 ASP.NET 상태 관리 권장 사항을 참조하십시오.
단원 내용
ASP.NET 세션 상태 개요
세션 상태의 여러 기능을 설명합니다.세션 식별자
브라우저가 특정 세션으로 식별되는 방식을 설명합니다.세션 상태 이벤트
global.asax 파일에 추가할 수 있는 세션 상태 이벤트를 설명합니다.세션 상태 모드
여러 가지 세션 상태 저장 모드를 설명합니다.세션 상태 보안
세션 상태를 사용할 때 고려해야 할 보안 문제를 설명합니다.방법: 세션 상태에 값 저장
세션 상태 변수에 값을 저장하는 샘플을 제공합니다.방법: 세션 상태에서 값 읽기
세션 상태 변수에서 값을 읽는 샘플을 제공합니다.세션 상태 저장소 공급자 구현
사용자 지정 세션 상태 저장소 공급자를 만드는 방법을 설명하고 샘플을 제공합니다.
참조
System.Web.SessionState
세션 상태에 응용 프로그램 데이터를 저장할 수 있도록 하는 클래스와 인터페이스를 제공합니다.Session
현재 HTTP 요청의 세션에 액세스할 수 있도록 합니다.
관련 단원
ASP.NET 상태 관리 권장 사항
여러 ASP.NET 상태 관리 옵션의 차이점을 설명합니다.ASP.NET 상태 관리
ASP.NET 응용 프로그램에 응용 프로그램 상태를 저장하는 방법을 간단히 설명합니다.