はじめに ASP.NETで利用可能なオブジェクトとしてセッション、クッキー、クエリ文字列などがあります。これらのオブジェクトは、画面の表示内容を決定するための入力引数や、複数のリクエストにまたがった状態を記憶するためなどの用途で利用されます。ASP.NETではこれらのオブジェクトが簡単に利用できるようになっていて非常に便利ですが、いくつか不満な点もあります。 不満な点の一つ目は、セッションはObject型、クエリ文字列とクッキーはString型でデータのやり取りをする点です。例えばInt32型のデータをセッションから取得する際には型変換が必要になります。これらの型変換は値を取得するたびに発生するので、アプリケーション全体で見るとそれなりにコストがかかることが考えられます。 2つめは、キーを文字列で入力して値を引き出す場合、キーを打ち間違う可能性がある点です。例えば、 という形で値を取得する