2011-11-10 30 views
3

在C#中的VS2010加載項中,如何獲得光標所在方法的名稱和簽名?在C#中的VS2010加載項中,如何獲取光標當前所在方法的名稱和簽名?

我想創建一個加載項,在運行時獲取當前方法的名稱和簽名,然後爲該方法添加一個「in」和「out」日誌消息。

例子:

前:

public void TheMethod(string text) 
{ 
... 

return text; 
} 

後:

public void TheMethod(string text) 
{ 
log.Trace("public void TheMethod(string text =" + text + ") - in"); 

... 

log.Trace("public void TheMethod(...) - out with text = " + text); 

return text; 
} 

是否有任何外接教程/覆蓋獲得方法信息的鏈接,看到的頂部和底部方法,插入文本等?我試過谷歌搜索,我沒有得到有幫助的myc。

+2

這不是說現在可以幫助您,但是C#5將具有特殊的屬性,可以讓您獲取方法名稱,文件名和行號作爲方法的參數。很刺激的東西。 – StriplingWarrior

回答

1

特別針對您的日誌記錄需求,這就是Aspect Oriented Programming所適合的類型。例如,PostSharp可以做你想要的那種邊界動作。請參閱here瞭解如何使用該框架完成此操作的示例。

相關問題