私は、次のクラスがあるとします。指定ジェネリック医薬品は、フィールドを使用してタイプ
MyClass myClass = new MyClass();
myClass.myDecimal = row.Field<decimal>("MyDecimalColumnName");
myClass.myString = row.Field<string>("MyStringColumnName");
:、私はそうのようなクラスを
public class MyClass
{
public decimal myDecimal;
public string myString;
}
私はDataRowExtensions方法現在Field<>
を使用したい使用しています
しかし、もし私がdecimal
以外の何かにmyDecimalの型を変更することを決心したなら、私はrow.Field
への呼び出しをrefleにしたい正しいデータを確認してください。
私は、次の構文に似た何かをしたい:
myClass.myDecimal = row.Field<typeof(myClass.myDecimal)>("MyDecimalColumnName");
これはコンパイルできない、と私はそれが呼ばれることになるものは何でも、ちょうどdecimal
を返すためにtypeof
またはGetType()
を使用する方法が分からないし。
これを行う方法はありますか。コンパイル時に型がすでに分かっているので、ジェネリックはコンパイル時の構造体なので、これを実現できると思いました。
ありがとうございます!
は[こちら](http://stackoverflow.com/q/196936/754438) – Reniuz
*は、コンパイラができない顔をしていますその型パラメータを推論する? – davisoa
@davisoa *返品*の値ではない、いいえ –