1

私はこの仕事をしようとしています

Type ReflectionObject = r.GetType();
var field = ReflectionObject.GetField("Frame");
field.SetValue(r, 2);

しかし、それは機能しません。ブレークポイントを設定しましたが、フィールドが表示されないことがわかります。したがって、テストでは、「テスト」フィールドが1つあるモデルを作成しました。

namespace Recorder.Models
{
class Recording : Recorder.Recording
{
    int test { get; set; }
}
}

コードをさらにシンプルにしました

Recorder.Models.Recording r = new Recorder.Models.Recording();
var fields = r.GetType().GetFields();

それでも「フィールド」は空です。これの何が問題になっていますか?

4

1 に答える 1

1

それはフィールドではなくプロパティだからです。これを試して:

var prop = ReflectionObject.GetProperty("Frame");
prop.SetValue(r, 2);
于 2013-02-10T19:48:34.623 に答える