2017-05-08 29 views
-1

我試圖創建一個OleTableAttribute,我將適用於一類MyTable旁邊一個System.Data.Linq.Mapping.TableAttribute以便它會是這個樣子:添加事件偵聽到C#類屬性反思

[Table(Name="MyTable")] 
[OleTable] 
public class MyTable 
{ 
    [Column(IsPrimaryKey = true)] 
    public int pk_id { get; set; } 
    /*...*/ 
} 

我」什麼d像OleTableAttribute要做的就是在它所標記的類中尋找任何[Column]屬性的屬性,並且反射性地向setter方法添加某種類型的偵聽器(如果它有一個)。這個問題的重點是如何做setter調用的反射監控設置;只是一個簡單的「嘿,它被稱爲」信號是我所需要的。這可能嗎?

+0

好像[PostSharp](https://www.postsharp.net/)是我需要在這裏查看的東西。 –

回答

0

PostSharp工程。使用[NotifyPropertyChanged]方面將使用我在此尋找的信號類型在幕後裝飾您的所有屬性。然後[OleTable]可以將其歸類爲as INotifyPropertyChanged並添加自己的PropertyChanged事件。