私は最近、主に新しいクラスをインスタンス化し、フィールドにプロパティを設定することを目的として、Reflectionのトピックに取り組んでいます。パスによって...たとえば、パブリックプロパティを持つGamesというクラスがある場合があります-
Game myGame = new Game()
myGame.GamingProperties.HowToPlay = "bla bla bla";
myGame.StateProperties.CreationTime = DateTime.Today;
したがって、たとえば、パスが「GamingProperties.HowToPlay」のプロパティに(リフレクションマジックを使用して)値を設定する必要があります。
これまで、Guy Mahieuの「 PropertyReflector 」クラスを使用してきました。これは必要なことを正確に実行しますが、100,000秒のオブジェクトのリフレクト/デシリアライズに関してはゆっくりです。
少し後で、「式ツリー」(および「 FastReflection 」のようなプロジェクト)を使用することで、プロパティ値をはるかに高速に設定できることがわかりました。しかし、今はFastReflectionができないため、行き詰まりました。ネストされた型に適切に値を設定します。
とにかく-問題は-System.Windows.PropertyPath
これで何とかして私を助けることができるかどうかです。それも関係がありますか?たぶん私は自分のニーズにそれを使用することができますか、または.Binding
(と密接に関連しているSystem.Windows.PropertyPath
)メソッドを使用できますか?
私は明確で、私の質問にあまり乱雑ではないことを願っています。ヒントや提案に感謝します...