管理專案參考

在針對外部元件撰寫程式碼之前,您的專案必須先包含該元件的參考。您可以建立下列元件類型的參考:

  • Windows 市集應用程式參考

  • .NET Framework 類別庫或組件

  • COM 元件

  • 同一方案中專案的其他組件或類別庫

  • XML Web Service

如需關於 XML Web Service 參考的詳細資訊,請參閱 Web References

Windows 市集應用程式參考

專案參考

以 Windows 8 為目標的 Windows 市集專案不能取決於以 Windows 8.1 為目標的 Windows 市集專案或二進位檔。

如果應用程式的任何專案以 Windows 8.1 為目標,而且應用程式包含 C++ Windows 市集專案,您必須執行下列步驟:

  1. 將應用程式中的所有專案重定目標為 Windows 8.1。以滑鼠右鍵按一下您的應用程式中的每個專案,並選取 [將目標重定為 Windows 8.1] 命令,然後在 [檢閱專案和方案變更] 對話方塊按一下 [確定]。

  2. 在依賴 C++ Windows 市集專案的每一個 Visual Basic、Visual C# 和 JavaScript 專案中以滑鼠右鍵按一下,選取 [加入參考],移至 [視窗] 索引標籤,然後移至 [擴充功能] 子索引標籤,取消核取 [Microsoft Visual C++ 執行階段套件 v11.0] 並選取 [Microsoft Visual C++ 執行階段套件 v12.0],然後按一下 [確定]。

目標為 Windows 8.1 的 Visual Basic、C# 和 JavaScript Windows 市集專案,可以參考目標為 Windows 8 的 Visual Basic 和 C# Windows 市集專案,前提是這些專案不使用 Windows 8.1 中已被取代的 API。請參閱將 Windows 8 應用程式移轉到 Windows 8.1 Preview,了解以 Windows 8 為目標的 Windows 市集專案從 Windows 8.1 專案參考時是否仍會如預期般運作。

擴充功能 SDK 參考

目標為 Windows 8.1 的 Visual Basic、C#、C++ 和 JavaScript Windows 市集專案,不可以參考依賴 Microsoft Visual C++ 執行階段套件 v11.0 的擴充功能 SDK,因為這樣會導致執行階段問題。您可以了解擴充功能 SDK 是否取決於 Microsoft Visual C++ 執行階段套件 v11.0,方法是建立新的 C# Windows 市集專案,以滑鼠右鍵按一下專案並選擇 [加入參考],移至 [視窗] 索引標籤,然後移至 [延伸] 子索引標籤,選取擴充功能 SDK,然後查看 [Reference Manager] 的右窗格是否列出 [Microsoft.VCLibs,版本 = 11.0] 相依性。

目標為 Windows 8.1 的 Visual Basic、C# 和 JavaScript Windows 市集專案,可以參考不依賴 Microsoft Visual C++ 執行階段套件 v11.0 的擴充功能 SDK,只要這些擴充功能 SDK 不使用 Windows 8.1 中已被取代的 API。請檢查擴充功能 SDK 廠商網站,確認目標為 Windows 8.1 的 Windows 市集參考專案是否能夠參考它。

如果您判斷不支援應用程式所參考的擴充功能 SDK,則必須執行下列步驟:

  1. 查看造成錯誤之專案的名稱。在專案名稱,用括號加註專案的目標平台。例如,[MyProjectName (Windows 8.1)] 表示您的專案 MyProjectName 是以平台版本 Windows 8.1 為目標。

  2. 移至擁有不支援的擴充功能 SDK 的廠商的網站,並安裝相依性與專案設為目標之平台版本相容的擴充功能 SDK 版本。

    注意事項注意事項

    一個了解擴充功能 SDK 是否有其他擴充功能 SDK 相依性的方式,是重新啟動 Visual Studio,建立新的 C# Windows 市集專案,以滑鼠右鍵按一下專案並選擇 [加入參考],移至 [視窗] 索引標籤,移至 [擴充功能] 子索引標籤,選取擴充功能 SDK 和檢視 [參考管理員] 的右窗格。如果有相依性,則會在其中列出。

    重要事項重要事項

    如果您專案以 Windows 8.1 為目標,且上一個步驟中安裝的擴充功能 SDK 有 Microsoft Visual C++ 執行階段封裝的相依性,則與 Windows 8.1 相容的 Microsoft Visual C++ 執行階段封裝版本為 v12.0,而且會隨 Visual Studio 2013 一併安裝。

  3. 如果在先前步驟中安裝的擴充功能 SDK 對其他擴充功能 SDK 有相依性,請移至擁有這些相依性的廠商的網站,並安裝與專案設為目標之平台版本相容的相依性版本。

  4. 重新啟動 Visual Studio 並開啟應用程式。

  5. 以滑鼠右鍵按一下造成錯誤的專案並選擇 [加入參考] (在 Visual Basic、C# 或 JavaScript 專案中) 或 [參考] (在 C++ 專案中)。對於 C++ 專案,按一下 [加入新參考] 按鈕。

  6. 按一下 [視窗] 索引標籤和 [擴充功能] 子索引標籤,然後取消選取舊版擴充功能 SDK 的核取方塊,並選取新版擴充功能 SDK 的核取方塊。按一下 [確定]。

在設計階段加入參考

若要在設計階段加入一或多個參考,您可以使用 [參考管理員] 對話方塊或 [加入參考] 對話方塊,視建置的專案類型而定。您的所有 Windows 市集 應用程式和大多數其他類型的專案都使用參考管理員對話方塊。如需詳細資訊,請參閱如何:使用參考管理員新增或移除參考。一些其他專案類型會支援 [加入參考] 對話方塊。如需詳細資訊,請參閱如何:使用加入參考對話方塊加入或移除參考

您可以使用 [加入參考] 對話方塊瀏覽未列出的組件。您無法從全域組件快取 (GAC) 加入參考,因為受限於它是執行階段環境的一部分。

當在專案中建立組件的參考時,Visual Studio 會在下列位置中搜尋組件:

  • 目前專案目錄 (您可以使用 [瀏覽] 索引標籤尋找這些組件)。

  • 同一方案中的其他專案目錄 (您可以使用 [專案] 索引標籤尋找這些組件)。

如需在設計階段加入參考的詳細資訊,請參閱 如何:使用加入參考對話方塊加入或移除參考

注意事項注意事項

所有專案都包含 mscorlib 的隱含參考。Visual Basic 專案包含 Microsoft.VisualBasic 的隱含參考。

Visual Studio 中的所有專案都包含 System.Core 的隱含參考,即使 System.Core 已從參考清單中移除也一樣。

在執行階段參考共用元件

在執行階段,元件必須位於專案的輸出路徑或在 全域組件快取 (GAC) 中。如果專案中包含不在這些位置的物件參考,則當建置專案時,您必須將參考複製到專案的輸出路徑。CopyLocal 屬性會指出是否必須複製。如果值為 True,在建置專案時會將參考複製到專案目錄。如果值為 False,就不會複製參考。

如果您部署的應用程式中包含在 GAC 中已註冊之自訂元件的參考,則不論 CopyLocal 設定為何,該元件都不會隨著應用程式一起部署。在舊版的 Visual Studio 中,您可以在參考上設定 CopyLocal 屬性,以確保組件會進行部署。現在,您必須以手動方式將組件加入至 [\Bin] 資料夾。這麼做才會檢查所有的自訂程式碼,降低不熟悉的自訂程式碼在發行時的風險。

根據預設,如果組件或元件位於全域組件快取中或是架構元件,就會將 CopyLocal 屬性設定為 [False]。否則,便會將值設定為 [True]。專案對專案間的參考一定都會設定為 [True]。

參考目標為不同 .NET Framework 版本的專案或組件

您可以建立參考目標為不同 .NET Framework 版本之專案或組件的應用程式。例如,您可以建立目標為 .NET Framework 4 Client Profile (參考目標為 .NET Framework 2.0 的組件) 的應用程式。如果您建立之專案的目標是舊版 .NET Framework,則無法在該專案中設定目標為 .NET Framework 4 Client Profile 或 .NET Framework 第 4 版之專案或組件的參考。

如需詳細資訊,請參閱以特定的 .NET Framework 版本或設定檔為目標

專案對專案間的參考和檔案參考

檔案參考是指直接參考組件,您可以使用 [加入參考] 對話方塊的 [瀏覽] 索引標籤來建立檔案參考。專案對專案間的參考是指參考內含組件的專案,您可以使用 [加入參考] 對話方塊的 [專案] 索引標籤來建立專案對專案間的參考。

專案對專案間的參考之優勢在於,會在建置系統中建立專案之間的相依性。因此,如果在上次建置參考專案後專案經過變更,就會建立相依專案 (Dependent Project)。檔案參考並不會建立建置相依性,因此可能會建置參考專案而不會建置相依專案,而且參考也會過時 (也就是說,專案可以參考先前建置的專案版本)。如此將導致在 bin 目錄中需要單一 DLL 的數個版本,但這是不可能的。當發生這種衝突時,您將會看到如警告: 無法將專案 'project' 中的相依性 'file' 複製至執行目錄,因為它會覆寫參考 'file' 的訊息。

您應該避免將檔案參考加入至同一方案中的其他專案輸出,因為這麼做可能會造成編譯錯誤。請改用 [加入參考] 對話方塊中的 [專案] 索引標籤,建立同一方案中專案對專案間的參考。這樣一來就能夠對在專案中建立的類別庫進行較佳的管理,使得小組開發更為容易。如需詳細資訊,請參閱中斷參考的疑難排解如何:建立和移除專案相依性

注意事項注意事項

如果某個專案的 .NET Framework 目標版本為 4.5 版,而其他專案的目標版本為 2、3、3.5 或 4.0 版,則建立的是檔案參考而非專案參考。

Web 參考

您也可使用 [加入 Web 參考] 對話方塊以加入 Web 參考。如需詳細資訊,請參閱How to: Add and Remove Web References

請參閱

工作

中斷參考的疑難排解

如何:使用加入參考對話方塊加入或移除參考

概念

如何:使用參考管理員新增或移除參考

其他資源

Referencing Namespaces and Components

Managing References

使用組件設計程式