누군가가 "정적 데이터"와 "ASP.NET"을 같은 문장에서 보게되면 모든 종류의 경고가 사라집니다. 마크는 정적 클래스가 중첩 된 경우에도 정적이 될 것이라고 말했다으로
예, 당신은, 어떤 인스턴스화 클래스는 정적 메서드/속성/생성자를 가질 수
MyStaticClass.StaticField = 3; ///wont work
MyInstanceClass.MyStaticClass.StaticField = 3; // works
포함하는 클래스를 통해 그들을 호출 할 필요가 명시 적으로 클래스를 정적으로 만드는 것은 클래스의 목적과 의도를 명확히하는 비 정적 인 실수를 만들 수 없다는 부가적인 이점을 가지고 있습니다.
그러나 ASP.net의 정적 클래스는 응용 프로그램 수준에서 정적이므로주의해야합니다. 따라서 여러 사용자가있는 경우에는 권한에 관계없이 모두 동일한 정적 데이터가 표시되며 해당 데이터가 변경되면 모든 그것을 사용하는 사용자.
정적 변수는 db에서 한 번 읽은 다음 방금 표시된 즉 응용 프로그램의 현재 버전 또는 응용 프로그램의 시작 시간 인 과 같은 것을 넣을 수있는 올바른 위치 일 수 있지만 놓기에는 매우 잘못되었습니다. 사용자 별 데이터 (언어 환경 설정, 사용자 이름 등) ...
왜 그런가요? 진짜 문제가 뭐야? –
속성과 같은 정적 클래스를 사용하려고했지만 하위 클래스를 normal로 다시 변경하고 해당 속성 접근자를 만들었습니다. – callisto