たとえば、クラスに含まれるプロパティがあります
public class Greeter {
private Hashtable _data;
public string HelloPhrase { get; set; }
public Greeter(data) {
_data = data;
}
}
私がやりたいのは、次のように、HelloPhraseプロパティに属性を追加することです。
[MyCustomAttribute("Hello_Phrase")]
public string SayHello { get; set; }
コンストラクター中に、MyCustomAttributeが定義されているClass(Greeter)のプロパティを反映し、プロパティのGet/Setメソッドを匿名メソッド/デリゲートに設定できるようにします。
public Greeter(data) {
_data = data;
ConfigureProperties();
}
クラスからPropertyInfoを取得することができましたが、これはGetSetMethod(http://msdn.microsoft.com/en-us/library/system.reflection.propertyinfo.getsetmethod.aspx)と対応するGetGetMethodのみを公開します。
こことオンラインでいくつかの質問を読みましたが、ある種のアスペクトライブラリを使用しない答えを見つけることができません。
実行時にGet/Setメソッドを設定するためのプロバイダーポインターはありますか?理想的には
x =>_data[keyDefinedByAttribute];