세션과 ViewState의 차이점

Anonim

세션과 ViewState

ViewState의 정보는 클라이언트의 숨겨진 필드에 암호화 된 값으로 만 저장됩니다. 이로 인해 데이터가 안전하지 못하고 해킹 당할 수 있습니다. 다시 게시하는 동안 ViewState는 특정 웹 사이트의 변경 사항을 추적합니다.

한편, 세션은 웹 페이지에서보다 일반적으로 사용되며 페이지뿐 아니라 전체 응용 프로그램 및 특정 브라우저 또는 페이지를 사용하는 사용자의 전체 기간에도 영향을줍니다. 세션은 모든 유형의 객체에 유효하며 브라우저의 서버 메모리에 저장됩니다. 보유한 데이터는 컴퓨터 사용자의 데이터, 즉 사용자 별 데이터입니다. 사용자가 브라우저 응용 프로그램을 닫거나 세션이 만료 될 때까지 데이터를 사용할 수 있습니다.

ViewState와 달리 세션의 데이터는 세션 내에서 다른 창이나 페이지에 액세스하거나 복제 할 수 있습니다. 또한 세션에는 특정 컨트롤을 사용하지 않거나 사용 설정하는 기능이 없습니다. 세션은 또한 메모리 리셉터클에 저장 될 다양한 종류의 데이터를 포함합니다. 서버 메모리를 사용하기 때문에 세션도 ViewState에 비해 더 큰 메모리를 가지고 있습니다. 단점은 세션에 만료 시간이 있고 서버 메모리에 저장된 데이터의 양이 시간 서버로드에 영향을 미칠 수 있다는 것입니다.

요약:

1. ViewState 및 세션 외에도 다른 ASP. NET 솔루션에는 응용 프로그램 변수, 캐시 및 쿠키가 포함됩니다. 2. ViewState 및 세션은 서버 환경에서 실행 및 액세스 할 수 있습니다. 3. ViewState는 서버 측에서 세션이 사용되는 동안 클라이언트 측에서 사용됩니다. 클라이언트 측에 있으면 ViewState에 만료가 없습니다. 반대 (만기가 있고 서버 측에 있음)는 세션 용입니다. 4. ViewState는 문자열 또는 직렬화 가능 데이터 만 저장할 수 있으며 세션은 많은 수의 데이터 유형을 보유 할 수 있습니다. 이렇게하면 ViewState의 데이터 양이 세션의 데이터 양보다 훨씬 줄어 듭니다. 5. ViewState가이 기능을 사용할 수없는 경우 세션에서 새 페이지 또는 창에 데이터를 복제하거나 액세스 할 수 있습니다. 6. Session은 데이터를 서버 메모리에 저장하고 ViewState는 브라우저의 숨겨진 필드에 데이터를 암호화 된 데이터로 숨 깁니다. 7. 서버 메모리가 다른 종류의 데이터를 보유하므로 많은 양의 저장된 데이터가 서버로드에 영향을 줄 수 있습니다.