0

不確定這是否可能,但考慮到我們可以輕鬆導航到方法調用的實現(或至少選擇可能的實現),甚至可以語法突出顯示代碼覆蓋率 - 是否有任何方法執行「搜索」或概述了可以在給定高亮部分中運行的所有代碼?Visual Studio - 有什麼方法可以搜索可執行的代碼子集嗎?

即如果我想強調的代碼

CallThirdParty(); // this function calls five other functions from classes X Y and Z 
WriteToDatabase(); // no child function calls 
PerformReconciliation(); // this function calls fourteen other functions from class A 

我可以運行代碼,將在類X Y Z和一個搜索?或者至少可以查看所有可以/可以爲該代碼片段運行的代碼?

請原諒我,如果它沒有多大意義,但我認爲這將是絕對可怕的,尤其是當你跳入一個你不熟悉的項目時!

對於Visual Studio的問題,但我會對任何實現此目的的IDE /插件感興趣。

+0

你的意思是[call hierarchy](https://msdn.microsoft.com/library/dd409859)? (如果您所在的方法與該部分相比非常大,則可以暫時將該部分提取到其自己的方法中,或者(從C#7開始)本地函數。) –

回答

0

Code Map可能會做你正在尋找的東西。正如文章說,它可以幫助你

  • 瞭解.NET應用程序的整體架構。
  • 通過逐步鑽取細節來分析該架構中出現的依賴關係。
  • 通過從特定代碼元素構建依賴關係圖來理解和分析對代碼的建議更改的影響。

Call Hierarchy也可能有幫助。正如文章所說,

調用層次結構使您能夠通過顯示所選的方法,屬性或構造函數的所有調用來瀏覽代碼。這使您能夠更好地理解代碼流程以及評估代碼更改的效果。您可以檢查幾個級別的代碼,以查看複雜的方法調用鏈和代碼的其他入口點,這使您可以探索所有可能的執行路徑。

此外,您可以隨時調試並逐步查看代碼,以查看它在不同情況下的功能,然後查看調用堆棧等,以跟蹤您的調用和變量。

相關問題