[畢業生的商業軟件開發之路]解決方案資源管理器
VS.NET集成開發環境右上方為解決方案資源管理器。其用戶界面如下所示。
解決方案資源管理器包含一個工具條和一個解決方案資源樹狀列表。[袁永福版權所有]
解決方案資源樹狀列表的方式列出了C#工程中包含的所有的成員項目。這個樹狀列表中列出的常見的成員項目類型有以下幾種。
這個樹狀列表的只有一個“解決方案”根節點,根節點下面列出了該解決方案下的所有的成員項目。解決方案下面一般是各種類型的工程項目節點。還可以是其他文件。
鼠標右擊解決方案節點,會如下圖彈出快捷菜單。
該快捷菜單中常用的菜單項目有
|
生成解決方案 |
對該解決方案下的所有的程序工程進行編譯,輸出編譯結果。
這個進行是增量編譯。在編譯一個程序工程前會判斷該工程及其內容是否發生改變,若改變了則進行編譯,否則就是用最后一個編譯結果。這能節省生成解決方案的執行時間。
比如對于一個C#工程,若在最后一次編譯成功后所有的程序源代碼文件,資源文件沒有修改過,則生成解決方案時該C#工程不會編譯而是用最后一次編譯結果。 |
|
重新生成解決方案 |
也是將解決方案下的所有的程序工程進行編譯,輸出編譯結果。但不會進行增量編譯判斷。 |
|
添加 |
該菜單項目有子菜單項目。 |
|
添加→新建項目 |
顯示“添加新項目”對話框,若用戶的操作新增了一個項目,則將新增的項目添加到這個解決方案中。下一次打開解決方案時也會加載這個剛剛新增的程序項目。 |
|
添加→現有項目 |
顯示一個“添加現有項目”的文件選擇對話框,若用戶選擇了一個VS.NET支持的程序項目文件,比如C#或者VB.NET項目文件,則VS.NET加載該項目并添加到這個解決方案中。下一次打開解決方案時也會加載這個程序項目。 |
|
添加→新建網站 |
顯示一個“添加新網站”對話框,若用戶的操作新增了一個網站類型的程序項目則將這個新增的項目添加到這個解決方案中。 |
|
添加→現有網站 |
顯示一個“添加現有網站”對話框,若用戶的操作打開了一個網站類型的程序項目,則VS.NET將這個程序項目添加到解決方案中。 |
|
重命名 |
修改解決方案的名稱。 |
|
屬性 |
在VS.NET的主工作區域中顯示解決方案屬性窗口。 |
解決方案節點下列出了該解決方案中的程序工程節點。一個解決方案可以包含多個和多種程序工程,比如一個解決方案可以包含若干個C#工程,若干個VB.NET工程或若干個VC++.NET工程,安裝工程等等。[袁永福版權所有]
點擊程序工程節點,會如下圖彈出快捷菜單
該快捷菜單中常用的菜單項目有
|
生成 |
對程序項目進行編譯,輸出編譯結果。會進行增量編譯判斷,若最后一次生成后所有的源代碼或資源文件沒有修改過則不會重新生成而直接使用上一次的編譯結果。 |
|
重新生成 |
對程序項目進行編譯,輸出編譯結果。不會進行增量編譯判斷。 |
|
添加 |
這個菜單項目有若干子菜單。 |
|
添加→新增項 |
顯示“添加新項”對話框,往這個程序項目中添加新的文件。 |
|
添加→現有項 |
顯示“添加現有項”對話框,可將多個已經存在的文件添加到程序項目中。 |
|
添加→新建文件夾 |
在程序項目中新建一個文件夾。 |
|
添加→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個外部程序集。
鼠標右擊“引用”節點會彈出如下圖所示的快捷菜單。
該快捷菜單中,“添加引用”菜單功能等于程序工程的快捷菜單中的“添加引用”,“添加Web引用”菜單功能等于程序工程的快捷菜單中的“添加Web引用”。
程序工程節點下大部分是程序文件節點。包括源代碼文件、程序資源文件和其他文檔文件。對于某些程序模塊,比如窗體、用戶控件、ASP.NET頁面等,需要多個程序文件的支持,此時會將這些相關聯的文件顯示為主文件的子節點。
如下圖所示,對于一個窗體一般包含三個文件。比如對于窗體“frm左對齊”,包含三個文件“frm左對齊.cs”、“frm左對齊.Designer.cs”和“frm左對齊.resx”。其中第一個文件是窗體源代碼主文件,“Designer.cs”是窗體設計器自動生成的代碼文件,“resx”文件是窗體資源文件,用于保存窗體中的諸如圖片等資源數據。
如下圖所示,鼠標右擊文件節點,會顯示一個快捷菜單。
該快捷菜單中常用的菜單項目有
|
打開 |
以該文件類型對應的默認的方式打開文件。在樹狀列表中鼠標雙擊某個文件就相當于執行了“打開”操作。
比如對于窗體代碼文件則在VS.NET主工作區域中打開窗體設計器。
對于純粹的源代碼文件則在主工作區域中顯示該源文件的內容。
對于Word文檔則會調用MS Word程序打開該文件。 |
|
打開方式 |
顯示如下圖所示的“打開方式”對話框,選擇某種打開方式來打開文件。
|
|
查看代碼 |
直接查看文件的源代碼,而不調用某種可視化的設計器。
比如對于窗體代碼文件,默認是調用窗體設計器打開它的,而點擊“查看代碼”則顯示該窗體代碼文件的C#源代碼。 |
|
查看設計器 |
盡量調用當前文件的文件類型配套的可視化設計器來查看和編輯文件內容。
比如對于本例中的Form1.cs調用窗體設計器來打開文件。 |
|
從項目中排除 |
將當前文件從程序項目中去掉,使得程序項目不再包含該文件。但不會從磁盤中刪除該文件。今后還可以使用“添加現有項”的操作將文件重新包含在程序項目中。 |
|
剪切 |
剪切文件。 |
|
復制 |
復制文件。 |
|
刪除 |
刪除文件。注意,該操作將從磁盤中永久的刪除文件,而且無法使用Windows的回收站功能恢復文件。 |
|
重命名 |
修改文件名。 |
|
屬性 |
在屬性列表中顯示該文件的屬性設置。 |
對于不同的文件類型,該快捷菜單的內容可能會發上改變,即使對于同一種擴展名的文件其菜單內容也可能不同。
比如對于文件Form1.cs,VS.NET檢測到該文件是一個窗體的主源代碼文件,因此它的快捷菜單有“查看設計器”項目,而且點擊“打開”菜單會調用WinForm窗體設計器來打開該源代碼文件;而對于Program.cs文件,VS.NET檢測到該文件是一個純粹的C#源代碼文件,此時它的快捷菜單就沒有“查看設計器”,而且點擊“打開”菜單會以文本方式顯示該C#源代碼文件的內容。
當程序文件非常多時,可以使用文件夾以樹狀的結構組織和管理程序文件,比如同屬一個大的功能模塊的程序代碼可以放在一個文件夾下。
對于C#工程,文件夾還會影響源代碼的默認的命名空間的。在項目中的子文件夾中新增程序源代碼文件,則源代碼中的命名空間就是“項目默認命名空間.子文件夾名”。而且子文件夾中的資源文件在編譯后的程序集中的資源名稱也是“項目默認命名空間.子文件夾名.文件名”。[袁永福版權所有]
對于本例中的C#工程“第一個Windows應用程序”,其默認命名空間是“第一個Windows應用程序”。在解決方案資源樹狀列表的C#工程項目節點上鼠標右擊彈出快捷菜單,點擊“添加-新建文件夾”菜單項目,此時會在工程節點下面新建了一個“NewFolder1”的文件夾。
鼠標右擊“MyFolder”文件夾,會彈出如下圖所示的快捷菜單。
這個快捷菜單中常用的菜單項目有
|
添加 |
該項目有多個子菜單項目。這些子菜單項目用于在這個目錄下添加新的文件或子文件夾。 |
|
從項目中排除 |
從項目中排除這個文件夾以及所有的子文件夾和文件,但不從磁盤中刪除該文件夾及其內容。 |
|
重命名 |
修改該文件夾的名稱。 |
點擊“重命名”菜單項目將該文件夾名稱修改為“MyFolder”。這樣就完成了新增一個指定名稱的文件夾的操作。
在MyFolder文件夾下面新增一個名為“MyClass”的C#類源代碼文件。打開該文件可以看到其代碼文本如下
using System;
using System.Collections.Generic;
using System.Text;
namespace 第一個Windows應用程序.MyFolder
{
class MyClass
{
}
}
using System.Collections.Generic;
using System.Text;
namespace 第一個Windows應用程序.MyFolder
{
class MyClass
{
}
}
可以看到,默認情況下,這個類型的命名空間就是“第一個Windows應用程序.MyFolder”。
注意,當修改該文件夾的名稱后,該文件夾下已有的[袁永福版權所有]源代碼的命名空間不會自動更新,但此后新增的源代碼中的命名空間包含了新的文件夾的名稱的。
開發人員可以在文件夾下再建立子文件夾,形成多級目錄結構。此時在多層文件夾下面新增的C#代碼文件其默認的命名空間就是“項目默認命名空間.文件夾名.子文件夾名”,以此類推。這種文件夾層級關系理論上沒有限制,但在筆者的實踐中至多用上3層。
posted on 2011-10-09 22:35 袁永福 電子病歷,醫療信息化 閱讀(1375) 評論(0) 收藏 舉報









浙公網安備 33010602011771號