瀏覽和重新排列相依性圖形
您可以重新排列相依性圖形的項目使其更容易閱讀及改善轉譯效能。
需求
Visual Studio Ultimate、Visual Studio Premium、Visual Studio Professional
若要建立相依性圖形,您必須擁有 Visual Studio Ultimate。 請參閱 根據相依性圖形顯現程式碼相依性。
本主題內容
管理大型圖表
變更圖形配置
瀏覽圖形
檢查的節點和連結
隱藏或顯示節點和連結
群組節點
藉由使用滑鼠或鍵盤可以有更多方面瀏覽圖形,請選取空白圖形的說明連結。
管理大型圖表
當您第一次產生相依性圖形, Visual Studio 會建立其找到所有相依性的程式碼索引。 雖然這個程序可能需要一些時間,特別是的大型方案或圖形與多個連結時,這個索引改善稍後運行作業的效能。 如果程式碼後變更,則 Visual Studio 只重新索引更新的程式碼。
如果您不想等圖形完成產生動作,您可以隨時取消產生程序並嘗試下列建議:
圖形的特定相依性使您感興趣。 請參閱 根據相依性圖形顯現程式碼相依性。
在您產生整個方案的圖形前,請減少方案的範圍。
在產生圖表之後,請嘗試下列建議:
在圖形工具列上,選取 [快速叢集] ,讓您可以看到在程式碼中的自然相依性叢集。 請參閱 變更圖形配置。
組織圖形至較小範圍透過將相關的節點分組。 摺疊這些群組以只檢視會自動出現的群組間相依性。 請參閱 群組節點。。
手動編輯圖形移除不需要的節點和連結。 變更圖形不會影響基礎程式碼。 請參閱 編輯和自訂相依性圖形。
變更圖形配置
若要 |
在圖形工具列或圖表捷徑功能表 |
---|---|
排列整個圖表相依性在特定方向。 這樣可幫助您看到程式碼中的架構圖層。 |
選取下列其中一個圖形以樹狀目錄顯示:
|
請參閱程式碼中相依性的自然叢集。 |
選擇 快速叢集 來查看叢集中央依賴性最高的節點以及在這之外依賴性最低的節點 |
若要移動圖形中的特定節點,請拖動它們。 當移出其他的節點和連結,當你拖移節點請按住 [移位] 按鍵。 藉由選取樹狀配置單獨變更圖形中一個圖形群組中的配置、 [快速叢集] 或 [清單檢視],可讓群組的內容插入清單中。 請參閱 群組節點。。
注意事項 |
---|
下列功能無法在這個版本: [網路上的芳鄰瀏覽模式]、 [蝴蝶模式]、 [進階選項] 和 [相依性矩陣檢視]。 |
瀏覽圖形
若要 |
請執行這些步驟 |
---|---|
掃描圖形 |
拖曳圖形任意方向。 |
放大或縮小圖形 |
滾動滑鼠滾輪 -或- 選取工具列上的加號 (+) 或減號 (-)。 -或- 若要放大特定區域,請使用滑鼠右鍵在該區域周圍繪製一個矩形。 |
調整大小並符合其圖形的視窗 |
在圖形工具列上,選取 [縮放至適當比例]。 -或- 雙擊圖形的空白區域。 |
調整大小並使圖形中心在特定節點 |
展開這個節點。 雙擊節點中的空白區域。 Visual Studio 調整圖形,因此整個群組符合在圖表視窗內的。 如果您雙擊摺疊的命名空間、類別,或其成員, Visual Studio 會顯示程式碼定義。 |
獨立變更目前選取節點的焦點 |
請按 TAB。 目前在焦點內時,虛線會圍繞在節點周圍。 |
依名稱尋找在圖形上的節點。
提示
若要尋在方案中但不在圖形中的物件,可在 [方案總管]找到,然後將其拖曳至圖形。
|
重要事項
只有當群組已先展開時,您可以使用搜尋盒子找已摺疊群組中符合的項目。若要尋找這些符合項目並自動展開其母群組,可以在搜尋盒子中選取此選項。
|
尋找連結的來源或目標 如果連結太多,可以使用此方法輕鬆地查看特定連結的來源或目標。 |
|
選取所有未選取的節點 |
開啟所選節點的捷徑功能表。 選取 [選取], [反向選擇]。 |
選取連結至已選取節點的其他節點 |
開啟所選節點的捷徑功能表。 選取 [選取] 和下列其中一項:
|
檢查的節點和連結
相依性圖形顯示下列連結:
個別連結表示兩個節點之間的單一相依性。
跨群組連結表示不同群組中兩個節點之間的關聯性。
彙總連結表示兩個群組之間方向相同的所有相依性。
提示
圖形預設只會在選取的節點間顯示跨群組連結。若要隨時都顯示這些連結,請在圖形工具列上,開啟變更連結在圖形上的呈現方式清單。選取顯示所有跨群組連結
這個隱藏了群組之間的彙總連結。
若要 |
請執行這些步驟 |
---|---|
檢視關於節點或連結的更多資訊。 |
將滑鼠指標移至這個節點或連結上方,直到出現工具提示。 一個彙總連結的工具提示會列出其所表示的個別相依性。 -或- 開啟節點或連結的捷徑功能表。 選擇 [內容]。 |
顯示或隱藏群組的內容 |
|
查看命名空間、型別或成員的程式碼定義 |
開啟節點的捷徑功能表。 選取 [移至], [移至定義]。 -或- 按兩下節點。 為了展開群組,按兩下標題群組。 -或- 選取 節點。 請按 F12。 例如:
|
尋找連結的來源或目標 如果連結太多,可以使用此方法輕鬆地查看特定連結的來源或目標。 |
|
檢查參與彙總連結的項目和相依性 |
對於單一連結:
如果有多個連結:
Visual Studio 展開在連結的兩端的群組並只顯示參與此連結上的項目和相依性。
注意事項
當您檢視在部分群組中項目之間的相依性時,可能會看到下列行為:
|
檢查跨多重群組中節點的相依性 |
|
檢視節點或連結所參考的項目
注意事項
只有當圖形的 .dgml 檔案之節點或連結的 Reference 屬性已設定時才能這麼做。從節點或連結要加入項目的參考,請參閱 編輯和自訂相依性圖形。
|
開啟節點的捷徑功能表。 選取 [移至] 和項目。 |
隱藏或顯示節點和連結
隱藏節點以防止它們參與配置演算法。 根據預設,跨群組連結是隱藏的。 跨群組連結是連接跨群組之節點的個別連結。 當群組摺疊起來時,圖形會將所有跨群組連結彙總成單一的群組間連結。 當您展開一個群組並選取群組內的節點時,跨群組連結會出現並在群組中並顯示相依性。
警告
在您要與使用 Visual Studio Premium 或 Visual Studio Professional的人分享使用 Visual Studio Ultimate 建立的圖表之前,請確保為取消隱藏所有您想分享給其他人的節點或跨群組連結。否則,使用者將無法對這些項目取消隱藏。
隱藏或顯示節點
若要 |
請執行這些步驟 |
---|---|
隱藏選取的節點 |
|
隱藏未選取的節點 |
|
顯示隱藏的節點 |
|
編輯 .dgml 檔案來隱藏節點 |
|
若要顯示或隱藏連結
若要 |
在圖形工具列上,開啟 [變更連結在圖形上的呈現方式] 清單或開啟圖表捷徑功能表。 選取 |
---|---|
任何時候都顯示所有跨群組連結 |
顯示所有跨群組連結 這個隱藏了群組之間的彙總連結。 |
只顯示選取的節點的跨群組連結 |
顯示所選取節點上的跨群組連結 |
任何時候都隱藏跨群組連結 |
隱藏所有跨群組連結 |
隱藏所有連結 (或顯示所有連結) |
隱藏所有連結 若要顯示所有連結,請再次選取 [隱藏所有連結] 以關閉此模式。 |
群組節點
若要 |
請執行這些步驟 |
---|---|
將容器節點顯示為群組節點或葉節點 |
若要顯示容器節點為葉節點,請選取節點。 開啟您所選項目的捷徑功能表。 選取 [群組], [轉換為葉]。 若要顯示容器節點為群組節點,請選取節點。 開啟您所選項目的捷徑功能表。 選取 [群組], [轉換為群組]。 若要顯示所有葉節點為群組節點,開啟圖形的捷徑功能表。 選取 [群組], [開啟群組]。 若要顯示所有群組節點為葉節點,開啟圖形的捷徑功能表。 選取 [群組], [關閉群組]。 |
變更群組中的配置 |
|
將節點加入至群組 |
將節點拖曳至群組。 當您拖曳這個節點時, Visual Studio 會顯示運算式時您移動節點的運算式時。 您也可以將節點拖曳至群組之外。 |
增加一個節點至非群組節點。 |
您可以將任何節點轉換成群組。 拖曳節點到目標節點上。 |
群組中選取的節點 |
|
群組節點具有特定分類或屬性 |
|
根據節點的容器組成節點群組 |
|
根據節點的屬性值組成節點群組 |
|
移除群組 |
選取您想要移除的群組。 開啟您所選項目的捷徑功能表。 選取 [群組], [移除群組]。 |
從節點的父群組至上一層父群組 (如果沒有上一層父群組,則是群組外部) 移除節點 |
選取您要移動的節點。 開啟您所選項目的捷徑功能表。 選取 [群組], [從母系移除]。 |
您也可以編輯圖形的 .dgml 檔案,將節點組織成群組。
將節點轉換成群組或增加一個新群組
若要將節點轉換成群組,請開啟節點的捷徑功能表。 選取 [移至] 、 [DGML] 。
Visual Studio 開啟圖形的 .dgml 檔案並反白顯示<Node/> 該節點的項目。
-或-
若要加入新群組:
隨即開啟圖形的空白區域的捷徑功能表。 選取 [移至] 、 [DGML] 。
在 <Nodes> 區段中,加入新的 <Node/> 項目。
在 <Node/> 項目中加入 Group 屬性,指定群組呈現為展開或摺疊的狀態。 例如:
<Nodes> <Node Id="MyFirstGroup" Group="Expanded" /> <Node Id="MySecondGroup" Group="Collapsed" /> </Nodes>
在 <Links> 區段中,針對群組節點與其子節點之間的每一個關聯性,確定其中存在具有下列屬性的 <Link/> 項目:
Source 屬性,指定群組節點
Target 屬性,指定子節點
Category 屬性,指定群組節點與其子節點之間的 Contains 關聯性
例如:
<Links> <Link Category="Contains" Source="MyFirstNewGroup" Target="FirstGroupChildOne" /> <Link Category ="Contains" Source="MyFirstNewGroup" Target="FirstGroupChildTwo" /> <Link Category ="Contains" Source="MySecondNewGroup" Target="SecondGroupChildOne" /> <Link Category="Contains" Source="MySecondNewGroup" Target="SecondGroupChildTwo" /> </Links>
如需 Category 屬性的詳細資訊,請參閱 指派分類給節點和連結 在 編輯和自訂相依性圖形.