例えば
Type t = typeof(T);
t.GetProperty("Company")
TはオブジェクトではないためType、単なる型パラメータです。
コンパイル時に、typeパラメーターは実際のtypeに置き換えられます。たとえば、そのstringタイプに対して生成されたコードの場合、typeof(T)実際にはになりますtypeof(string)。これはオブジェクトでstringはなく、Type単なるデータ型です。そのデータ型のオブジェクトtypeofを取得するには、が必要です。Type
型と型を記述するオブジェクトには違いがあるからです。
Tタイプです。型に適用され、問題の型を説明typeofする型のオブジェクトを返します。Type
違いを説明する別の試み:
string、、などのコンパイル時の種類がありintますMyClass。コードを書くときに宣言しました。
ランタイムタイプがあります。それらはタイプのオブジェクトに保持されますType。これらは、実行時にメモリに存在する通常のオブジェクトインスタンスです。typeof()によってそのようなオブジェクトを取得しますMyType。これらの型オブジェクトは、実行時に型を調べるために使用できます。