セッションとViewStateの違い

Anonim

セッションとViewState

ViewStateの情報は、ブラウザの非表示フィールドに暗号化された値としてのみクライアントに格納されます。これにより、データが保護されず、ハッキングされる可能性があります。ポストバック時に、ViewStateは特定のWebサイトの変更を追跡します。

<! - 1 - > <!一方、セッションはWebページでより一般的に使用され、ページだけでなくアプリケーション全体やその特定のブラウザやページを使用しているユーザーの全期間に影響します。セッションは任意のタイプのオブジェクトに対して有効であり、ブラウザのサーバーメモリに格納されます。それが保持するデータは、コンピュータユーザのデータ、すなわちユーザ固有のデータである。ユーザーがブラウザアプリケーションを終了するか、セッションが終了するまで、データは利用可能です。

<! - 3 - >

ViewStateとは異なり、セッション内のデータは、セッション内の別のウィンドウまたはページにアクセスまたは複製できます。セッションには、特定のコントロールを無効または有効にする機能もありません。セッションはまた、メモリレセプタクルに格納される異なる種類のデータを含む。また、サーバーメモリを使用しているため、セッションはViewStateに比べて大きなメモリを持ちます。これの欠点は、セッションに有効期限があり、サーバーメモリに格納されているデータの量がタイムサーバーの負荷に影響する可能性があることです。要約:

1。 ViewStateとセッションを除いて、他のASP。 NETソリューションには、アプリケーション変数、キャッシュ、およびCookieが含まれています。 2. ViewStateとセッションは、サーバー環境で実行され、アクセス可能な状態になります。 3。 ViewStateはクライアント側で使用され、セッションはサーバー側で使用されます。クライアント側にいると、ViewStateに有効期限がありません。反対側(有効期限があり、サーバー側にある)はセッション用です。 4。 ViewStateは文字列またはシリアライズ可能なデータのみを保持できますが、セッションでは多数のデータ型を保持できます。これにより、ViewStateのデータ量はセッションのデータ量よりもずっと少なくなります。 5。 ViewStateはこの機能を使用できませんが、セッションは新しいページまたはウィンドウにデータを複製またはアクセスできます。 6。セッションはそのデータをサーバーメモリに格納し、ViewStateはそのデータをブラウザの非表示フィールドに暗号化されたデータとして非表示にします。 7.サーバのメモリにはさまざまな種類のデータが格納されているため、大量のデータがサーバの負荷に影響する可能性があります。