방법: 응용 프로그램 상태에서 값 읽기
업데이트: 2007년 11월
응용 프로그램 상태는 ASP.NET 응용 프로그램의 모든 클래스에서 사용할 수 있는 데이터 리포지토리입니다. 응용 프로그램 상태는 서버의 메모리에 저장되고 데이터베이스에서 데이터를 저장하거나 가져오는 것보다 실행 속도가 빠릅니다. 단일 사용자 세션에만 해당되는 세션 상태와 달리 응용 프로그램 상태는 모든 사용자 및 세션에 적용됩니다. 따라서 사용자에 따라 변경되지 않고 자주 사용되는 소량의 데이터를 저장할 때 응용 프로그램 상태가 유용합니다.
응용 프로그램 상태는 사용자가 응용 프로그램 내에서 URL 리소스에 처음으로 액세스할 때 만들어지는 새 HttpApplicationState 클래스 인스턴스에 저장됩니다. 자세한 내용은 ASP.NET 응용 프로그램 상태 개요를 참조하십시오.
응용 프로그램 상태에는 Object로 형식화된 데이터가 저장됩니다. 따라서 데이터를 응용 프로그램 상태에 저장할 때는 serialize할 필요가 없지만 데이터를 가져올 때는 적절한 형식으로 캐스팅해야 합니다. null(Visual Basic에서는 Nothing) 개체를 캐스팅할 수 있지만 형식 검사와 같은 다른 방법을 통해 존재하지 않는 응용 프로그램 상태 항목을 사용하려고 하면 NullReferenceException 예외가 throw됩니다.
절차
응용 프로그램 상태에서 값을 읽으려면
응용 프로그램 변수가 있는지 확인하고 액세스할 때 변수를 적절한 형식으로 변환합니다.
다음 코드 예제에서는 응용 프로그램 상태의 AppStartTime 값을 가져온 다음 이 값을 DateTime 형식의 appStateTime 변수로 변환합니다.
If (Not Application("AppStartTime") Is Nothing) Then Dim myAppStartTime As DateTime = _ CDate(Application("AppStartTime")) End If
if (Application["AppStartTime"] != null) { DateTime myAppStartTime = (DateTime)Application["AppStartTime"]; }