Type
インターフェイスを実装するオブジェクトにキーをマップする辞書を持つクラスがありますIWhatever
。
Type を入力として取得し、辞書でその型にマップされたオブジェクトを返す汎用関数を作成したいと考えています。
何かのようなもの :
public T get<T>(Type type)
ここで、 T は型のインスタンスであり、型は implementsIWhatever
です。
指定されたタイプのオブジェクトを返したくありませんObject
。Iwhatever
返されるオブジェクトの型は、コンパイル時に明確に推測できます。だから私はそれが可能であるべきだと思います。
私はJavaでこれを行うことができました:
public T get<T>(Class<T extends IWhatever> type) { // implementation }
C# でこれを達成する方法はありますか? そうでない場合は、その理由と、どのような代替案を提案しますか?