[Visual Studio] 方案總管中,自訂檔案與檔案之間的父子關係

來源:互聯網
上載者:User

使用Visual Studio開發軟體項目時,透過Visual Studio所提供的方案總管,可以很方便的管理程式碼與相關資源。方案總管中每個軟體項目的程式碼檔案會以樹狀結構的方式來呈現,這個樹狀結構主要是依照實體目錄路徑、實體檔案路徑來做為呈現的參考。

 

 

隨著時代的演化,單純依照實體目錄路徑、實體檔案路徑來做為樹狀結構呈現的參考,已經慢慢跟不上開發上的需求。例如說,軟體項目裡一個ASP.NET網頁,就包含了開發人員撰寫的.aspx、.cs以及系統產生的.designer.cs三個程式碼檔案。這時方案總管上如果單純依照上列規則來呈現,可以預期到,當項目內ASP.NET網頁越來越多的時候,方案總管內會被滿滿的程式碼檔案列表所淹沒,進而影響開發人員尋找程式碼檔案的效率。

 

 

Visual Studio的方案總管為了更方便的管理程式碼與相關資源,在軟體項目的專案檔(.csproj)裡加入了,定義檔案與檔案之間父子關係的功能。有了這個功能,方案總管在以樹狀結構來呈現程式碼檔案的時候,就能透過父子關係的定義來做為呈現的參考,用來加強程式碼檔案收納歸類的能力,進而提高開發人員尋找程式碼檔案的效率。

 

例如下列範例是一個ASP.NET應用程式專案檔的內容節錄,這段內容主要是定義項目內包含了三個檔案:WebForm1.aspx、WebForm1.aspx.cs、WebForm1.aspx.designer.cs,其中WebForm1.aspx.cs、WebForm1.aspx.designer.cs這兩個檔案依賴於WebForm1.aspx,換個角度說也就是:WebForm1.aspx是另外兩個程式碼檔案的父檔案。項目檔的內容中有了這個父子關係的定義,在方案總管上的呈現,就會是開發人員熟悉的WebForm1.aspx檔案下有.cs、.designer.cs兩個檔案。

 

<ItemGroup>  <Content Include="WebForm1.aspx" /></ItemGroup><ItemGroup>  <Compile Include="WebForm1.aspx.cs">    <DependentUpon>WebForm1.aspx</DependentUpon>  </Compile>  <Compile Include="WebForm1.aspx.designer.cs">    <DependentUpon>WebForm1.aspx</DependentUpon>  </Compile></ItemGroup>

 

 

在原生狀態下,Visual Studio IDE並不提供檔案與檔案之間父子關係的編輯功能,開發人員在加入新項目到軟體項目時,只能使用預設的父子關係定義。例如:在WPF軟體項目中加入新的WPF視窗,IDE會加入.xaml與.cs兩個程式碼檔案,並且定義.xaml是.cs的的父檔案。

 

開發人員如果需要自訂檔案與檔案之間父子關係,最快的方式就是使用記事本開啟項目檔(.csproj)來做修改,不過這個方式很容易改錯、並且非常的不人性化,不建議開發人員採用這個解決方案。比較建議的方式是安裝擴充套件,例如:「VSCommands for Visual Studio 2012」套件,這個套件為Visual Studio擴充了許多的功能,其中一個功能就是:提供檔案與檔案之間父子關係的編輯功能。

接下來的範例內容,就介紹如何透過「VSCommands for Visual Studio 2012」這個套件提供的功能,來編輯檔案與檔案之間父子關係。

 

1.範例是一個ASP.NET應用程式,在這個軟體項目裡,包含了一個WebForm以及這個WebForm專用的CSS檔案。

 

 

2.在Visual Studio的方案總管中,選取WebForm1.aspx、WebForm1.aspx.css這兩個檔案並且按下滑鼠右鍵。這時如果已經安裝「VSCommands for Visual Studio 2012」,可以在選單中看到Group Items這個選項,接著點擊這個選項。

 

 

3.接著VS會提供一個對話方塊,條列上一個步驟選擇的檔案,並且要求開發人員選擇哪個檔案是父檔案(其餘檔案就是子檔案)。這時選擇WebForm1.aspx並且按下Ok按鈕。

 

 

4.經由上列三個步驟,就完成了WebForm1.aspx、WebForm1.aspx.css這兩個之間父子關係的編輯。在方案總管中可以觀察到WebForm1.aspx.css已經被歸類在WebForm1.aspx之下,並且可以被折迭隱藏讓整個項目變的更加清爽。

 

 

 

本文的最後要來大推一下Demo佛心建立的Best Gallery | demo小鋪。這個網站介紹了許多實用的Visual Studio的套件,其中許多套件都能讓開發工作更加輕鬆、更加的有效率,使用VS2010和VS2012 做為謀生工具的開發人員千萬不要錯過了。:D

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.