VS.NET內建開發環境右上方為解決方案資料總管。其使用者界面如下所示。
<a href="http://blog.51cto.com/attachment/201110/222657100.jpg" target="_blank"></a>
解決方案資料總管包含一個工具條和一個解決方案資源樹狀清單。[袁永福版權所有]
解決方案資源樹狀清單的方式列出了C#工程中包含的所有的成員項目。這個樹狀清單中列出的常見的成員項目類型有以下幾種。
這個樹狀清單的隻有一個“解決方案”根節點,根節點下面列出了該解決方案下的所有的成員項目。解決方案下面一般是各種類型的工程項目節點。還可以是其他檔案。
滑鼠右擊解決方案節點,會如下圖彈出快捷菜單。
<a href="http://blog.51cto.com/attachment/201110/222731566.jpg" target="_blank"></a>
該快捷菜單中常用的菜單項目有
生成解決方案
對該解決方案下的所有的程式工程進行編譯,輸出編譯結果。
這個進行是增量編譯。在編譯一個程式工程前會判斷該工程及其内容是否發生改變,若改變了則進行編譯,否則就是用最後一個編譯結果。這能節省生成解決方案的執行時間。
比如對于一個C#工程,若在最後一次編譯成功後所有的程式源代碼檔案,資源檔案沒有修改過,則生成解決方案時該C#工程不會編譯而是用最後一次編譯結果。
重新生成解決方案
也是将解決方案下的所有的程式工程進行編譯,輸出編譯結果。但不會進行增量編譯判斷。
添加
該菜單項目有子菜單項目。
添加→建立項目
顯示“添加新項目”對話框,若使用者的操作新增了一個項目,則将新增的項目添加到這個解決方案中。下一次打開解決方案時也會加載這個剛剛新增的程式項目。
添加→現有項目
顯示一個“添加現有項目”的檔案選擇對話框,若使用者選擇了一個VS.NET支援的程式項目檔案,比如C#或者VB.NET項目檔案,則VS.NET加載該項目并添加到這個解決方案中。下一次打開解決方案時也會加載這個程式項目。
添加→建立網站
顯示一個“添加新網站”對話框,若使用者的操作新增了一個網站類型的程式項目則将這個新增的項目添加到這個解決方案中。
添加→現有網站
顯示一個“添加現有網站”對話框,若使用者的操作打開了一個網站類型的程式項目,則VS.NET将這個程式項目添加到解決方案中。
重命名
修改解決方案的名稱。
屬性
在VS.NET的主工作區域中顯示解決方案屬性視窗。
解決方案節點下列出了該解決方案中的程式工程節點。一個解決方案可以包含多個和多種程式工程,比如一個解決方案可以包含若幹個C#工程,若幹個VB.NET工程或若幹個VC++.NET工程,安裝工程等等。[袁永福版權所有]
點選程式工程節點,會如下圖彈出快捷菜單
<a href="http://blog.51cto.com/attachment/201110/222812601.jpg" target="_blank"></a>
生成
對程式項目進行編譯,輸出編譯結果。會進行增量編譯判斷,若最後一次生成後所有的源代碼或資源檔案沒有修改過則不會重新生成而直接使用上一次的編譯結果。
重新生成
對程式項目進行編譯,輸出編譯結果。不會進行增量編譯判斷。
這個菜單項目有若幹子菜單。
添加→新增項
顯示“添加新項”對話框,往這個程式項目中添加新的檔案。
顯示“添加現有項”對話框,可将多個已經存在的檔案添加到程式項目中。
添加→建立檔案夾
在程式項目中建立一個檔案夾。
添加→Windows窗體
顯示“添加新項”對話框,并自動設定項目類型為“Windows 窗體”。用于快速的向程式項目中添加新的Windows窗體類型。
添加→使用者控件
顯示“添加新項”對話框,并自動設定項目類型為“使用者控件”。用于快速的向程式項目中添加新的使用者控件類型。
添加引用
顯示“添加引用”對話框,為程式項目添加一個程式集引用,使得軟體能調用其他程式集中已經實作的軟體功能。
添加Web引用
顯示“添加Web引用”對話框,為程式項目添加一個Web引用,是的軟體能調用WebService。
設為啟動項目
在VS.NET中開發人員點選VS.NET的菜單“調試-啟動調試”或者按在F5鍵以調試模式啟動程式時,由于解決方案可以包含多個程式工程項目,而VS.NET不支援同時運作所有的程式項目,是以必須從多個程式工程項目中指定一個作為首先啟動的項目。使用本菜單項目就是指定目前程式工程項目為啟動項目。
啟動項目必須為WinForm類型、指令行類型或者網站類型,不能為類庫類型。
移除
在解決方案中删除該項目,但不會删除任何項目檔案,隻是讓解決方案不再包含這個程式工程項目。
修改程式工程項目的名稱。項目工程名稱和檔案名是相同的,修改工程項目名稱也會修改檔案名。注意,修改工程名稱不會修改工程的程式集名稱和預設命名空間。
比如在這裡的C#工程“第一個Windows應用程式”,它的工程檔案名為“第一個Windows應用程式.csproj”;若修改項目工程名稱為“第二個Windows應用程式”,則它的工程檔案名修改為“第二個Windows應用程式.csproj”。但這個工程編譯輸出結果還是“第一個Windows應用程式.exe”。
在樹狀清單的“引用”節點下列出了本C#工程引用的外部程式集。外部程式集就是其他人已經開發好的獨立的程式子產品,開發人員在開發自己的程式中可以調用這些現有的程式子產品的功能,實作了軟體的重用。[袁永福版權所有]
在本例中可以看到,C#工程“第一個Windows應用程式”引用了“System”、“System.Data”、“System.Deployment”、“System.Drawing”、“System.Windows.Forms”和“System.Xml”等6個外部程式集。
滑鼠右擊“引用”節點會彈出如下圖所示的快捷菜單。
<a href="http://blog.51cto.com/attachment/201110/222841694.jpg" target="_blank"></a>
該快捷菜單中,“添加引用”菜單功能等于程式工程的快捷菜單中的“添加引用”,“添加Web引用”菜單功能等于程式工程的快捷菜單中的“添加Web引用”。
程式工程節點下大部分是程式檔案節點。包括源代碼檔案、程式資源檔案和其他文檔檔案。對于某些程式子產品,比如窗體、使用者控件、ASP.NET頁面等,需要多個程式檔案的支援,此時會将這些相關聯的檔案顯示為主檔案的子節點。
如下圖所示,對于一個窗體一般包含三個檔案。比如對于窗體“frm左對齊”,包含三個檔案“frm左對齊.cs”、“frm左對齊.Designer.cs”和“frm左對齊.resx”。其中第一個檔案是窗體源代碼主檔案,“Designer.cs”是窗體設計器自動生成的代碼檔案,“resx”檔案是窗體資源檔案,用于儲存窗體中的諸如圖檔等資源資料。
如下圖所示,滑鼠右擊檔案節點,會顯示一個快捷菜單。
<a href="http://blog.51cto.com/attachment/201110/222851845.jpg" target="_blank"></a>
打開
以該檔案類型對應的預設的方式打開檔案。在樹狀清單中滑鼠輕按兩下某個檔案就相當于執行了“打開”操作。
比如對于窗體代碼檔案則在VS.NET主工作區域中打開窗體設計器。
對于純粹的源代碼檔案則在主工作區域中顯示該源檔案的内容。
對于Word文檔則會調用MS Word程式打開該檔案。
打開方式
顯示如下圖所示的“打開方式”對話框,選擇某種打開方式來打開檔案。
<a href="http://blog.51cto.com/attachment/201110/222900872.jpg" target="_blank"></a>
檢視代碼
直接檢視檔案的源代碼,而不調用某種可視化的設計器。
比如對于窗體代碼檔案,預設是調用窗體設計器打開它的,而點選“檢視代碼”則顯示該窗體代碼檔案的C#源代碼。
檢視設計器
盡量調用目前檔案的檔案類型配套的可視化設計器來檢視和編輯檔案内容。
比如對于本例中的Form1.cs調用窗體設計器來打開檔案。
從項目中排除
将目前檔案從程式項目中去掉,使得程式項目不再包含該檔案。但不會從磁盤中删除該檔案。今後還可以使用“添加現有項”的操作将檔案重新包含在程式項目中。
剪切
剪切檔案。
複制
複制檔案。
删除
删除檔案。注意,該操作将從磁盤中永久的删除檔案,而且無法使用Windows的資源回收筒功能恢複檔案。
修改檔案名。
在屬性清單中顯示該檔案的屬性設定。
對于不同的檔案類型,該快捷菜單的内容可能會發上改變,即使對于同一種擴充名的檔案其菜單内容也可能不同。
比如對于檔案Form1.cs,VS.NET檢測到該檔案是一個窗體的主源代碼檔案,是以它的快捷菜單有“檢視設計器”項目,而且點選“打開”菜單會調用WinForm窗體設計器來打開該源代碼檔案;而對于Program.cs檔案,VS.NET檢測到該檔案是一個純粹的C#源代碼檔案,此時它的快捷菜單就沒有“檢視設計器”,而且點選“打開”菜單會以文本方式顯示該C#源代碼檔案的内容。
當程式檔案非常多時,可以使用檔案夾以樹狀的結構組織和管理程式檔案,比如同屬一個大的功能子產品的程式代碼可以放在一個檔案夾下。
對于C#工程,檔案夾還會影響源代碼的預設的命名空間的。在項目中的子檔案夾中新增程式源代碼檔案,則源代碼中的命名空間就是“項目預設命名空間.子檔案夾名”。而且子檔案夾中的資源檔案在編譯後的程式集中的資源名稱也是“項目預設命名空間.子檔案夾名.檔案名”。[袁永福版權所有]
對于本例中的C#工程“第一個Windows應用程式”,其預設命名空間是“第一個Windows應用程式”。在解決方案資源樹狀清單的C#工程項目節點上滑鼠右擊彈出快捷菜單,點選“添加-建立檔案夾”菜單項目,此時會在工程節點下面建立了一個“NewFolder1”的檔案夾。
滑鼠右擊“MyFolder”檔案夾,會彈出如下圖所示的快捷菜單。
<a href="http://blog.51cto.com/attachment/201110/222914463.jpg" target="_blank"></a>
這個快捷菜單中常用的菜單項目有
該項目有多個子菜單項目。這些子菜單項目用于在這個目錄下添加新的檔案或子檔案夾。
從項目中排除這個檔案夾以及所有的子檔案夾和檔案,但不從磁盤中删除該檔案夾及其内容。
修改該檔案夾的名稱。
點選“重命名”菜單項目将該檔案夾名稱修改為“MyFolder”。這樣就完成了新增一個指定名稱的檔案夾的操作。
在MyFolder檔案夾下面新增一個名為“MyClass”的C#類源代碼檔案。打開該檔案可以看到其代碼文本如下
using System;
using System.Collections.Generic;
using System.Text;
namespace 第一個Windows應用程式.MyFolder
{
class MyClass
{
}
}
可以看到,預設情況下,這個類型的命名空間就是“第一個Windows應用程式.MyFolder”。
注意,當修改該檔案夾的名稱後,該檔案夾下已有的[袁永福版權所有]源代碼的命名空間不會自動更新,但此後新增的源代碼中的命名空間包含了新的檔案夾的名稱的。
開發人員可以在檔案夾下再建立子檔案夾,形成多級目錄結構。此時在多層檔案夾下面新增的C#代碼檔案其預設的命名空間就是“項目預設命名空間.檔案夾名.子檔案夾名”,以此類推。這種檔案夾層級關系理論上沒有限制,但在筆者的實踐中至多用上3層。
本文轉自xdesigner 51CTO部落格,原文連結:http://blog.51cto.com/xdesigner/683818,如需轉載請自行聯系原作者