0
私はコンパイルする前に、まだ私の方法では、引数に動的にフィットタイプにしたい、私は意味:動的フィットタイプ
public class Foo
{
public int Prop1;
public string Prop2;
}
public class Program
{
public static void Main(string[] args)
{
Foo foo = MakeMethod(x => x.Prop1, 5); //good, Prop1 is int type, 5 isn't underlined in red in VS
Foo foo = MakeMethod(x => x.Prop2, 10); //bad, Prop2 is string, not int, VS underlines 10 in red, and I want this behaviour
}
private static Foo MakeMethod(Func<Foo, object> prop, object val)
{
Foo result;
//do some stuff
return result;
}
}
は私がオブジェクト型で何かを行う必要があります知っているが、私は何を知りません。私は単純に2番目のジェネリックprop引数がvalの型かどうかを調べることができます。そうでなければ私のメソッドに戻りますが、それは私を満足させるものではありません。動的な型を使用したくないのは、プログラムを実行した後に例外が発生するためです。コード作成段階ではありません。あなたはジェネリック医薬品を探している