2008-11-10 117 views
1

最近我發現我的精心製作的xml評論沒有出現在我的同事的智能感知中,我感到很詫異。一直使用關聯的程序集和項目引用,我沒有意識到你必須導出.xml文檔以訪問這些信息。框架goto定義顯示註釋,這些是從xml註釋生成的嗎?

這讓我想知道.Net框架intellisense如何工作。如果我理解正確,那麼.xml文件必須隱藏在特定文件夾的某個位置?

但我的主要問題是關於'轉到定義' - 如果你定義了一個.Net框架程序集,你可以從元數據生成信息 - 但也有很多有用的評論 - 是從Xml註釋神奇地生成的,還是有人不得不寫一個宏+來轉換他們只是爲了構建?換句話說:我怎樣才能得到這個效果?

回答

1

您的項目是否配置爲生成XML文檔?僅僅因爲您將註釋添加到源代碼中,編譯器將不會生成.xml文件,除非被告知。

在項目屬性頁面中,轉到「Build」選項卡並查看「Output」部分。您應該看到一個標題爲「XML文檔文件」的複選框條目。如果該複選框後面的文本框爲空,則不會生成XML文檔文件。

獲得生成的XML文檔文件後,您應該在智能感知工具提示中看到您的註釋。如果您將對其他項目的引用作爲項目引用加入,則這應該會自動發生。如果包含對程序集的引用,則需要確保xml文件與引用的程序集位於相同的位置。 (在構建時,您應該分別獲取bin/debug或bin/release文件夾中所有程序集的xml文件。)

對於.NET Framework程序集本身,將安裝相應的xml文檔文件作爲框架的一部分。對於.NET 2.0,3.0或3.5,文檔文件位於C:\Windows\Microsoft.NET\Framework\v2.0.50727\en(假定框架的默認安裝)。這些文件由IntelliSense工具提示和Visual Studio中的「轉到定義」功能使用,以顯示此信息。沒有任何特殊的處理或宏運行以實現此目的。 Visual Studio最可能使用的唯一信息是註冊表項的組合,以確定文檔文件的正確路徑。

儘管您可能可以在同一個文件夾中找到自己程序集的xml文檔文件,但我建議您不要這樣做,因爲這樣會污染與非Framework相關文件的Framework安裝。

+0

謝謝,但我想知道關於框架程序集 - System.Drawing等,其中是那些xml文件?我可以把我的XML文件? '元數據生成'中的評論來自哪裏? – Benjol 2008-11-12 09:44:22