System.Type
を汎用タイプ定義に変換したいので、Genericメソッドを呼び出すときに使用できます。基本的にはtypeof
の逆です。ただ、いくつかのより多くの情報タイプを汎用クラス定義に変換する
public class BaseAppContext {
private Type settingsType;
public Type SettingsType
{
get { return this.settingsType; }
set { this.SettingsType = value; }
}
public void MyFunction() {
MyStaticClass.GetData<classof(this.SettingsType)>();
}
}
:
例は、(私は問題を抱えてどこclassofが本当の.NETメソッドではないとして、あなたは、表示されるように、私は真の解決策が必要だ「classof」を使用しました)なぜ私はこの奇妙な方法で問題を処理しているのですか? BaseAppContextは他の多くのクラスから参照されるクラスです。私がGenericにすると、コードの他の部分が変わることになりますが、これは私が望まないものです。私はフレームワークを書いているので、フレームワークで型を一度入力したいのですが、開発者はメソッドを呼び出すときに型を扱わなくても、提供された関数を使うことができます。
これは意味をなさない。あなたは 'List'で何ができますか?制約はどうですか? –
SLaks