管理專案中的參考
在您針對外部元件或連線服務撰寫程式代碼之前,您的項目必須先包含它的參考。 參考基本上是項目檔中的一個項目,其中包含 Visual Studio 尋找元件或服務所需的資訊。
新增參考的方式取決於您所處理程式碼的項目類型:
如果您在 [方案總管]中看到相依性 節點,您可以使用滑鼠右鍵作功能表來選取 [新增項目參考] 。
您也可以以滑鼠右鍵按兩下 項目節點,然後選取 [新增>項目參考]。
如果您在 [方案總管]中看到 參考 節點,您可以使用滑鼠右鍵作功能表來選取 [新增參考] 。
或者,以滑鼠右鍵按下 項目節點,然後選取 新增>參考。
如需詳細資訊,請參閱 如何:新增或移除參考。
您可以新增下列元件和服務類型的參考:
.NET 類別庫或元件
UWP 應用程式
COM元件
相同方案中專案的其他元件或類別庫
共享專案
XML Web 服務
UWP 應用程式參考
通用 Windows 平臺 (UWP) 會為每個執行 Windows 的裝置提供通用應用程式平臺。 若要瞭解如何建立 UWP 應用程式,請參閱 教學課程:使用 XAML 和 C# 在 Visual Studio 中建立您的第一個通用 Windows 平臺應用程式。
項目參考
通用 Windows 平臺 (UWP) 專案可以建立解決方案中其他 UWP 專案的參考,或對 Windows 8.1 專案或二進位檔的參考,前提是這些專案不會使用已在 Windows 10 和更新版本中淘汰的 API。 如需詳細資訊,請參閱 從 Windows 執行階段 8 移至 UWP。
如果您選擇將 Windows 8.1 專案重新定位到 Windows 10 或更新版本,請參閱 埠、移轉及升級 Visual Studio 專案。
提示
如需如何建立及建置適用於 Windows 10 和 Windows 11 的新 UWP 應用程式的詳細資訊,請參閱 選擇 UWP 版本。
擴充 SDK 參考
Visual Basic、C#、C++和 JavaScript 通用 Windows 平臺 (UWP) 應用程式可以參考以 Windows 8.1 為目標的延伸模組 SDK,只要這些擴充功能 SDK 不使用已在 Windows 10 和更新版本中已被取代的 API 即可。 請檢查擴充功能 SDK 廠商網站,以瞭解是否可以由 UWP 應用程式參考。
如果您判斷應用程式所參考的擴充功能 SDK 不受支援,則必須執行下列步驟:
查看造成錯誤的項目名稱。 項目目標的平臺會在項目名稱旁的括弧中記下。 例如,MyProjectName (Windows 8.1) 表示您的專案 MyProjectName 是以平臺版本 Windows 8.1 為目標。
請移至包含不受支援的延伸模組 SDK 的廠商網站,並安裝與您的專案所針對平臺版本相容的相依元件的延伸模組 SDK 版本。
注意
瞭解延伸模組 SDK 是否與其他延伸模組 SDK 有相依性的其中一種方式,是查看 參考管理員。 重新啟動 Visual Studio,建立新的 C# UWP 應用程式項目,然後以滑鼠右鍵按一下專案,接著選取 [新增參考]。 移至 [Windows] 索引卷標,然後移至 [延伸模組 子索引卷標],然後選取 [擴充功能 SDK]。 查看 參考管理員中的右窗格。 如果它有相依性,它們就會列在那裡。
重要
如果您的項目特別以 Windows 10 為目標,且在上一個步驟中安裝的擴充功能 SDK 與 Microsoft Visual C++ 運行時間套件相依性,則與 Windows 10 相容的 Visual C++ 運行時間套件 Microsoft 版本為 v14.0,且會隨 Visual Studio 一起安裝。
如果您在上一個步驟中安裝的擴充功能 SDK 與其他擴充功能 SDK 具有相依性,請移至擁有相依性之廠商的網站,然後安裝這些相依性版本與您專案目標平臺相容的版本。
重新啟動 Visual Studio 並開啟您的應用程式。
以滑鼠右鍵按兩下造成錯誤的專案中 參考 或 相依性 節點,然後選取 [新增參考]。
選取 [Windows] 索引卷標,然後選取 [延伸模組] 子索引卷標,取消核取舊延伸模組 SDK 的複選框,然後核取新延伸模組 SDK 的複選框。 請選擇 [確定]。
在設計時間新增參考
當您在項目中參考元件時,Visual Studio 會在下列位置搜尋元件:
目前的項目目錄。 (您可以使用 [瀏覽] 索引標籤 找到這些元件。)
相同方案中的其他項目目錄。 (您可以在 [項目] 索引標籤上找到這些元件。
注意
- 所有專案都包含 mscorlib 隱含參考。
- 所有專案都包含
System.Core
的隱含參考,即使System.Core
從參考清單中移除也一樣。 - Visual Basic 專案包含 Microsoft.VisualBasic的內建參考。
執行時期共用元件的參考
在運行時間,元件必須位於專案的輸出路徑或全域程式集緩存 (GAC) 中。 如果專案包含不在上述其中一個位置之對象的參考,則必須在建置專案時,將參考複製到專案的輸出路徑。 CopyLocal 屬性會指出是否必須建立此複本。 如果值 True,當您建置專案時,參考會複製到項目目錄。 如果值為 False,則不會複製引用。
如果您部署的應用程式包含在 GAC 中註冊的自定義元件的參考,那麼無論 CopyLocal 設定如何,該元件都不會隨應用程式一同部署。 在舊版的 Visual Studio 中,您可以在參考上設定 CopyLocal 屬性,以確保組件被部署。 現在,您必須手動將元件新增至 \Bin 資料夾。 此動作會讓所有自定義程式代碼受到審查,進而降低發佈您不熟悉的自定義程式代碼的風險。
根據預設,如果元件或元件位於全域程式集緩存或架構元件中,CopyLocal 屬性會設定為 False。 否則,值會設定為 True。 項目對項目參考始終設定為 True。
參考以不同 .NET 版本為目標的專案或元件
您可以建立參考以不同 .NET 版本為目標的專案或元件的應用程式。 例如,您可以建立以 .NET Framework 4.6 為目標的應用程式,以參考以 .NET Framework 4.5 為目標的元件。 如果您建立以舊版 .NET 為目標的專案,就無法將該專案中的參考設定為以較新版本為目標的專案或元件。
如需詳細資訊,請參閱 Framework 目標概觀。
專案間的參考
專案對專案參考是指含有組件的專案參考;您可以使用 [參考管理員] 對話方塊中的 [專案] 索引標籤新增專案參考。 只要提供專案的路徑,Visual Studio 就可以找到組件。
當您有一個產生組件的專案時,您應該引用專案,而不是使用檔案引用。 專案對專案參考的優點是它會在建置系統中的項目之間建立相依性。 如果自上次建置參考項目之後已變更,就會建置相依專案。 檔案參考不會建立組建相依性,因此可以建置參考專案而不建置相依專案,而且參考可能已過時。 (也就是說,專案可以參考先前建置的專案版本。這可能會導致 bin 目錄中需要數個版本的單一 DLL,這是不可能的。 發生此衝突時,會出現例如「警告:專案 'project' 中的相依性 'file' 無法複製到執行目錄,因為這樣會覆寫參考 'file'」的訊息。如需詳細資訊,請參閱 疑難排解中斷的參考 及 如何:建立和刪除專案相依性。
注意
如果一個專案的 .NET Framework 目標版本是 4.5,而另一個專案的目標版本是 2、3、3.5 或 4.0,則會建立檔案參考,而非專案對專案參考。
共用項目參考
與其他大多數專案類型不同,共用專案 沒有任何二進位輸出。 相反地,程式碼會被編譯進參考它的每個專案中。 共用專案可讓您撰寫許多不同的應用程式專案所參考的一般程式代碼。 程式代碼會編譯為每個參考專案的一部分,並可包含編譯程式指示詞,以協助將平臺特定功能併入共用程式碼基底。 在 [參考管理員] 對話方塊的 [共用專案] 索引標籤上,新增一個共用專案的參考。
檔案參考
文件參考是對於 Visual Studio 專案之外部組件的直接引用。 您可以使用 [參考管理員] 對話框的 [瀏覽] 索引標籤來建立項目。 當您只有組件或零件,而沒有產生它的專案時,請使用檔案參考。