共用方式為


HOW TO:使用架構總管尋找程式碼

在 Visual Studio Ultimate 中,您可以使用 [架構總管] 選取要視覺化之程式碼的垂直區段或「片段」。 您可以探索 Visual Studio 方案中的原始程式碼,或是已編譯的程式碼。 您也可以安裝其他提供者,以使用 [架構總管] 瀏覽其他定義域。 當您找到所要視覺化的程式碼時,您可以產生圖形,以瀏覽該程式碼中的關聯性。 如需詳細資訊,請參閱 HOW TO:產生適用於 .NET 程式碼的相依性圖形

注意事項注意事項

在 Visual Studio 2010 Ultimate 中,架構總管只支援 Visual C# .NET 和 Visual Basic .NET。若要探索 C 或 C++ 程式碼,請下載和安裝 Visualization and Modeling 功能套件。 下列架構總管中的型別只適用於 C 和 C++ 程式碼:Unions、Typedefs 和 Members,並且在選取它們時不會顯示結果。 如需詳細資訊,請參閱 Microsoft Visual Studio 2010 Visualization and Modeling 功能套件

本主題內容

  • 關於架構總管

  • 在 Visual Studio 方案中尋找原始程式碼

  • 在 Managed 組件或可執行檔中尋找已編譯的程式碼

  • 精簡瀏覽結果

  • 重新整理瀏覽結果

您可以將瀏覽工作階段儲存為查詢 (.dgql 檔案),以便稍後重複使用:

  • 將瀏覽工作階段儲存為查詢

  • 尋找已儲存的查詢

關於架構總管

若要開啟架構總管

  • 在 [架構] 功能表中指向 [視窗],然後按一下 [架構總管]。

    若要調整 [架構總管] 的大小,請拖曳視窗頂端直到您想要的高度為止。 若要移動 [架構總管],請將其標題列或索引標籤拖曳到您想要的位置。

    注意事項注意事項

    如果 [架構總管] 上面出現任何視窗 (例如 [錯誤清單] 視窗或 [輸出] 視窗),請將這些視窗移開以免妨礙您調整 [架構總管] 的大小。

[架構總管] 中的最上層網域

架構總管:定義域、檢視、節點、節點類型和連結類型

[架構總管] 以節點表示結構,並以連結表示關聯性。 當您進行瀏覽時,[架構總管] 會依次以連續的資料行內顯示節點。 第一個資料行將顯示供您瀏覽的定義域和檢視。 當您選取定義域和檢視時,[架構總管] 會在該檢視中顯示可用的節點。

當您在 [架構總管] 中選取某一資料行內的節點時,下一個資料行就會顯示與所選之節點有邏輯關聯的節點。 例如,選取命名空間時,您將會在下一個資料行看到類型。 如果您選取類型,則會在下一個資料行看到成員。 沿節點資料行右側顯示的折疊動作資料行可以識別下一個資料行所含節點的預設類型或關聯性。 您可以展開動作資料行並選取特定節點或連結類型,篩選下一個資料行的結果。

注意事項注意事項

當您將指標移至動作資料行上方時,它就會反白顯示。

在 Visual Studio 方案中尋找原始程式碼

若要使用此版本隨附的預先定義查詢,請參閱尋找已儲存的查詢。或者,您也可以使用 [架構總管] 中的 [方案檢視] 或 [類別檢視],向下瀏覽到運算式樹狀架構層級的原始程式碼:

  • [類別檢視] 會顯示 Visual Studio 方案的邏輯檢視。 例如,您可以依命名空間、類別、成員等項目進行瀏覽。

    [架構總管] 中的 [類別檢視]

    架構總管中的類別檢視

  • [方案檢視] 會顯示 Visual Studio 方案的實體檢視。 例如,您可以依專案、專案檔等項目進行瀏覽。

    [架構總管] 中的 [方案檢視]

    架構總管中的方案檢視 尋找已儲存的查詢

若要尋找方案中的程式碼

  1. 在 [架構總管] 第一個資料行的 [Visual Studio <方案名稱>] 底下,按一下 [方案檢視] 或 [類別檢視]。

    節點資料行隨即出現在第一個資料行右側。 這個資料行會顯示所選取檢視中的所有可用節點。 例如,如果選取 [類別檢視],您將會看到邏輯上存在於方案中的所有命名空間。

  2. 在節點資料行中選取一個或多個節點,即可看見下一個資料行會顯示相關節點。 若要選取目前資料行中的所有節點,按下 CTRL+A

  3. 重複執行步驟 2,直到您找到想要的節點為止。

    注意事項注意事項

    若要清除這些資料行以便重新啟動查詢,請按一下 [架構總管] 標題列底下的 [清除資料行]。

在 Managed 組件或可執行檔中尋找已編譯的程式碼

您可以使用 [架構總管] 中的 [選取檔案],向下瀏覽到方法對方法呼叫層級的 Managed 組件。

若要尋找已編譯的程式碼

  1. 在 [架構] 功能表中指向 [視窗],然後按一下 [架構總管]。

  2. 在第一個資料行中的 [檔案系統] 底下,按一下 [選取檔案]。

  3. 在 [開啟] 對話方塊中,瀏覽至 Managed 組件 (.dll) 或可執行檔 (.exe) 檔案、選取這些檔案,然後按一下 [開啟]。

    節點資料行隨即出現並顯示選取的檔案。

  4. 在節點資料行中,選取一個或多個檔案。

    另一個節點資料行隨即出現,並顯示所選取檔案中的所有節點。

  5. 選取一個或多個節點,即可看見下一個資料行會顯示相關節點。 若要選取目前資料行中的所有節點,按下 CTRL+A

  6. 重複執行步驟 4,直到您找到想要的節點為止。

精簡瀏覽結果

您可以利用下列方式,精簡瀏覽工作階段的結果:

  • 依名稱篩選目前資料行中的節點

  • 依節點類型或屬性篩選目前資料行中的節點

  • 依節點類型篩選下一個資料行中的節點

  • 依連結類型篩選下一個資料行中的節點

  • 依容器或屬性值組成節點群組

依名稱篩選目前資料行中的節點

依名稱篩選目前的資料行

依名稱篩選目前資料行

若要依名稱篩選目前資料行中的節點

  1. 在 [架構總管] 中的節點資料行頂端,按一下灰色區域以顯示篩選方塊。

  2. 輸入名稱,然後按 ENTER

    目前資料行中隨即只顯示符合的節點。 資料行右下角會顯示浮水印,表示已篩選過該資料行。

依節點類型或屬性篩選目前資料行中的節點

依分類或屬性篩選目前的資料行

依類型或屬性篩選目前資料行

若要依類型或屬性篩選目前資料行中的節點

  1. 在 [架構總管] 中的節點資料行頂端,按一下灰色區域以顯示篩選方塊。

  2. 在篩選方塊左側,按一下 [依據分類或屬性篩選目前資料行中的項目] 按鈕。

  3. 若只要顯示特定類型的節點,請在 [分類] 中按一下所需的類型。

  4. 若只要顯示具有特定屬性的節點,請在 [屬性] 中按一下所需的屬性。

  5. 完成後,請按一下 [確定]。

    目前資料行中隨即只顯示符合的節點。 資料行右下角會顯示浮水印,表示已篩選過該資料行。

依節點類型篩選下一個資料行中的節點

若要依節點類型篩選下一個資料行中的節點

  1. 在 [架構總管] 中,瀏覽至要查看之節點前面的節點資料行,然後選取所要的節點。

  2. 在節點資料行的右側,按一下摺疊的動作資料行加以展開。

    注意事項注意事項

    當您將指標移至動作資料行上方時,它就會反白顯示。

  3. 在動作資料行中的 [節點巡覽] 底下,選取要在下一個資料行看到的特定節點類型。

    注意事項注意事項

    若要查看這些類型的聯集,請選取多個類型。

    節點資料行隨即出現並顯示所有相符的節點。

依連結類型篩選下一個資料行中的節點

[架構總管] 會將用於篩選下一組節點的連結類型組織成對內或對外兩種分類。 這些分類描述連結相對於目前選取節點的方向。 對外連結會從目前選取的節點指向下一個相關的節點。 對內連結會從前一個相關節點指向目前選取的節點。 當您選取對外連結類型時,[架構總管] 會顯示下一層的相關節點。 當您選取對內連結類型時,[架構總管] 會顯示上一層的相關節點。

例如,如果您選取類別節點且選取對外的 [包含] 連結類型時,[架構總管] 就會顯示類別節點所包含的節點。 如果選取該類別節點的對內 [由下列包含] 連結類型時,您將會看見包含該類別的節點,例如命名空間、類別檔案和專案。

若要依連結類型篩選下一個資料行中的節點

  1. 在 [架構總管] 中,瀏覽至要查看之節點前面的節點資料行,然後選取所要的節點。

  2. 在節點資料行的右側,按一下摺疊的動作資料行加以展開。

    注意事項注意事項

    當您將指標移至動作資料行上方時,它就會反白顯示。

  3. 在動作資料行中,選取下列其中一項:

    • 若要查看下一層的相關節點,請在 [對外巡覽] 底下選取所需的連結類型。

    • 若要查看上一層的相關節點,在 [對內巡覽] 底下選取所需的連結類型。

      注意事項注意事項

      若要查看這些類型的聯集,請選取多個類型。

    下一個資料行隨即出現並顯示所有相符的節點。

依容器或屬性值組成節點群組

在 [架構總管] 中,您可以根據現有內含項目關聯性或其屬性值來建立節點群組。 如果可以組成群組,當您完成這項工作時,就會出現新群組節點的清單。

當您在 [架構總管] 中從這些群組建立圖形時,可以使用 [將全部顯示為群組] 命令,將連結的節點組織成群組。 如需詳細資訊,請參閱下列主題:

您也可以使用群組,組織現有圖形上的節點。 如需詳細資訊,請參閱 HOW TO:編輯和自訂圖形文件

若要依容器或屬性值組成節點群組

  1. 在 [架構總管] 中,瀏覽至包含要組成群組之節點的節點資料行。 若要選取資料行中的所有項目,請按下 CTRL+A

  2. 在節點資料行的右側,按一下摺疊的動作資料行加以展開。

    注意事項注意事項

    當您將指標移至動作資料行上方時,它就會反白顯示。

  3. 在動作資料行中的 [群組] 底下:

    按一下

    然後

    [依容器群組] 以查看任何可用的群組

    • 若要查看這些群組中的節點,請選取一些群組。

      下一個資料行隨即顯示所選取群組中的節點。

    [依屬性群組] 以查看任何可用的屬性

    1. 選取您用來當做群組的屬性。

      下一個資料行隨即顯示依屬性值組織的群組。

    2. 若要查看具有特定屬性值的節點,請選取一些屬性值群組。

    您所看到群組的數目和種類是根據下列屬性值型別所列出:

    • 布林值:True 和 False

    • 整數值:將值範圍劃為四等分的四個群組。

    • 字串值:每個獨特字串值會顯示個別群組,而節點會根據其特定屬性值歸屬於個別群組。

      當選取的屬性在多個節點上都具有相同的字串值時,這種群組方式特別有用。 例如,如果選取的屬性在個別節點上各有獨特的字串值,則每個節點都會自成一個群組。

重新整理瀏覽結果

您必須手動重新整理 [架構總管],才能顯示對程式碼或方案所做的任何變更。

若要重新整理架構總管

  1. 在 [架構總管] 中,瀏覽至包含要重新整理之資料行前面的節點資料行。

  2. 在目前資料行中,選取與所更新節點相關的節點。

    另一個節點資料行隨即出現,並顯示重新整理過的節點清單。

將瀏覽工作階段儲存為查詢

在 [架構總管] 中,您可以將瀏覽工作階段儲存為查詢或是有向圖形查詢語言 (.dgql) 檔案。 您可以將查詢儲存到磁碟以供後續使用,或使用 GraphCmd.exe 工具以批次模式產生圖形。 如需以批次模式與 DGQL 產生圖形文件的詳細資訊,請參閱 HOW TO:產生適用於 .NET 程式碼的相依性圖形

若要儲存瀏覽工作階段

  1. 在 [架構總管] 標題列底下,按一下 [儲存查詢]。

  2. 在 [另存新檔] 對話方塊中指定查詢的名稱,然後在本機 [Queries] 資料夾中儲存為 .dgql 檔案,位置如下:

    …\My Documents\Visual Studio 2010\ArchitectureExplorer\Queries

    注意事項注意事項

    若要在 [架構總管] 中看到此查詢,您必須將 .dgql 檔案儲存到 [Queries] 資料夾,或將它加入方案中。 如需詳細資訊,請參閱尋找已儲存的查詢。

尋找已儲存的查詢

當您將查詢 (.dgql) 檔加入至 Visual Studio 方案,或儲存在本機 [Queries] 資料夾 (…\My Documents\Visual Studio 2010\ArchitectureExplorer\Queries) 時,可以使用 [架構總管] 來尋找這些檔案。這個資料夾也包含常用的預先定義查詢。 

如需如何在 [架構總管] 中儲存瀏覽工作階段的詳細資訊,請參閱儲存瀏覽工作階段。

方案中的架構總管查詢

方案中的查詢

若要尋找方案中的查詢

  1. 按一下 [檢視] 功能表上的 [架構總管]。

  2. 在第一個資料行中的 [已儲存的 DGQL 查詢] 底下,按一下 [在我的方案中] 即可看到查詢 (.dgql) 檔的資料行。

  3. 在查詢檔資料行中按一下查詢檔。

    另一個資料行隨即出現,並顯示從選取之查詢所找到的節點。

  4. 選取一個或多個節點,即可看見下一個資料行會顯示相關節點。 若要選取目前資料行中的所有節點,按下 CTRL+A

  5. 重複執行步驟 4,直到您找到想要的節點為止。

若要在本機 Queries 資料夾中尋找查詢

  1. 按一下 [檢視] 功能表上的 [架構總管]。

  2. 在第一個資料行中的 [已儲存的 DGQL 查詢] 底下,按一下 [在資料夾中] 即可看到查詢 (.dgql) 檔的清單。

    下表列出您可以用來探索方案中項目的預先定義查詢:

    查詢檔名稱

    顯示

    All Assembly References.dgql

    方案參考的所有組件。

    您可以從查詢結果產生顯示這些組件間相依性的圖形。 如需詳細資訊,請參閱 HOW TO:產生適用於 .NET 程式碼的相依性圖形

    All Output Assemblies.dgql

    在方案中所有輸出組件的一般清單,不含相依性連結。

    您可以從查詢結果產生所選取組件的相依性圖形:

    1. 在目前資料行中,選取您想要探索的組件。

    2. 在目前資料行的右側,按一下摺疊的動作資料行加以展開。

      注意事項注意事項
      當您將指標移至動作欄上方時,它就會反白顯示。
    3. 在動作資料行的 [命令] 底下,按一下 [標準圖形]。

    All Project References.dgql

    方案中專案之間的所有參考。

    您可以從查詢結果產生顯示這些專案間交互參考的圖形。 如需詳細資訊,請參閱 HOW TO:產生適用於 .NET 程式碼的相依性圖形

    All Projects.dgql

    方案中所有專案的一般清單。

    如果您的方案包含方案資料夾,這份清單將與您在 [架構總管] 中按一下 [方案檢視] 時出現的清單不同。

    Constructors.dgql

    所有建構函式方法的一般清單。

    Inheritance Graph.dgql

    方案中具有下列關聯性的所有型別:

    • 繼承自

    • 實作

    您可以從查詢結果產生顯示這些型別間繼承關係的圖形。 如需詳細資訊,請參閱 HOW TO:產生適用於 .NET 程式碼的相依性圖形

    Public Classes.dgql

    方案中所有公用類別的一般清單

    Virtual Members.dgql

    方案中所有虛擬成員的一般清單

  3. 在查詢檔資料行中按一下查詢檔。

    節點資料行隨即出現,並顯示從選取之查詢所找到的節點。

  4. 在節點資料行中選取一個或多個節點,即可看見相關節點的資料行。 若要選取目前資料行中的所有節點,按下 CTRL+A

  5. 重複執行步驟 4,直到您找到想要的節點為止。

請參閱

概念

視覺化現有的程式碼