정적 클래스의 수명은 무국적 ASP.NET 응용 프로그램에서 어떤 영향을 받습니까?

StackOverflow https://stackoverflow.com/questions/691560

문제

나는 작은 아이템 사전을 추적하기 위해 도우미 클래스를 정의했습니다. 이 정보를 정적 속성으로 저장하며 정적 생성자에서 초기화됩니다. 목록은 매우 작고 절대 변경되지 않으므로 XML 또는 DB 조회 테이블을 통해이 방법을 선택했습니다 ...

그러나 내가 알고 싶은 것은이 정적 속성이 페이지 사이에 값을 유지하거나 ASP.NET이 무국적이어야하는 경우 페이지 내에서도 값을 유지합니까?

예를 들어,이 목록이 내 페이지의 두 개의 다른 드롭 다운 목록에 바인딩하고 있습니다.

DropDownList1.DataSource = Helper.MyList;
DropDownList2.DataSource = Helper.MyList;

정적 클래스 헬퍼는 두 번의 별도 시간이라고 불리우므로 생성자가 두 번 호출됩니까, 아니면 전체 페이지 라이프 사이클 전체에서 범위를 유지합니까?

다음 페이지로 이동하여 다시 바인딩해야한다면 여전히 초기화되거나 다시 시작됩니까?

도움이 되었습니까?

해결책

아니요, 유형을 두 번 초기화하지 않습니다. 그만큼 Helper 수업은 다음에 새로운 것을 얻을 때만 재구성되면됩니다. AppDomain - 신청서가 새로 고침/재시작되거나 AppDomain 재활용.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top