C#ジェネリック型では、型引数に具体的な型が指定されているかどうかで型情報が変わります。List<T>クラスを例にとった場合、型引数Tの型が具体的に定まっていないList<T>を特にオープンジェネリック型(あるいはジェネリック型定義)、対してList<int>やList<string>など型引数Tの型が具体的な型が定まっているものをクローズジェネリック型(あるいは構築ジェネリック型、構築された型)と呼びます。typeof演算子・GetType演算子でジェネリック型の型情報を取得する場合、オープンジェネリック型とクローズジェネリック型を区別して取得することができます。Integer))を使用することによってそれぞれの型情報を取得することができます。1:31本ページはサンプルコード部分のみを抜粋したものです。全文はProgramming/.NET/リフレクションにてご覧いただけます。