この質問のコンテキストは、文字列を取得し、うまくいけばそれらを型に変換してジェネリックコードに渡すMVCアプリです。
- 入力用のタイプの文字列表現があります。
- ジェネリックメソッド の
Type
変数をの中に入れることはできないようです。<>
- それは、考えられるすべてのケースとジェネリックメソッド呼び出しを手動で説明する必要があることを意味しますか?それはこれを行う正しい方法ですか?
ModelBinder
アクションメソッドのジェネリック型パラメーターを持つことができる場所で、何らかの方法で型を理解できれば素晴らしいと思いますpublic ActionResult Something<T>()
。しかし、それが可能かどうかはわかりません。
例
public ActionResult DoSomething(string typeName, int? id)
{
var type = Type.GetType(typeName);
if (type == typeof(Apple)) DoSomethingElse<Apple>(id);
if (type == typeof(Orange)) DoSomethingElse<Orange>(id);
//if etc ... to infinity
}