-1

重複の可能性:
リフレクションを介してオブジェクトプロパティを設定する方法

次のプログラムがある場合:

public class MyClass
{
    public int MyIntProp {
        get;
        set;
    }
    public string MyStringProp {
        get;
        set;
    }
}

public class MyMainClass
{
    private const string PropertyName = "MyIntProp";
    private MyClass _myClass;

    public MyMainClass()
    {
        _myClass = new MyClass();
        // _myClass.PropertyName = 5;
    }
}

私がやりたいのは5MyIntPropプロパティに値を割り当てることができるようにすることです。文字列名を使用してこれを行うことは可能ですか?LINQを使用する前にこのようなことが行われているのを見ましたが、構文や見つけた場所を思い出せないようです。

4

1 に答える 1

3

GetPropertyメソッドでReflectionを使用できます。

 typeof(MyClass).GetProperty(PropertyName).SetValue(_myClass, 5);
于 2012-10-08T17:13:21.027 に答える