我希望能夠做的是將屬性添加到類的特定方法,以便那些如此裝飾的方法可以在其中調用正文中的語句我喜歡的方式。啓用以特定方式調用的類方法
例如,請考慮這種情況在C#:
public class A
{
public A() {}
[CallTwice()]
public void Func1()
{
Console.WriteLine("Calling Func1().");
}
public void Func2()
{
Console.WriteLine("Calling Func2().");
}
}
我想這樣一個場景,如果我這樣做:
public static void Main()
{
A a = new A();
a.Func1();
a.Func2();
}
我會得到這樣的輸出:
Calling A.Func1().
Calling A.Func1().
Calling A.Func2().
即我的裝飾Func1使它被調用兩次。
我想知道的是,我如何編寫代碼來利用我給Func1的具體裝飾,以便我知道兩次調用它的正文語句。這在C#中可能嗎?
我很好奇你在做什麼?表面上,它只是使代碼更難以遵循。目標是什麼? – Khepri 2011-06-12 05:05:12
我想知道是否有可能聲明地分離一個方法的實現從如何調用方法。這樣,如果我需要改變方法的調用方式,我只需要改變方法的實現屬性,而不是改變方法本身。 – 2011-06-12 16:24:34