MSBuild 提供公用 API 介面,讓您的程式可執行建置和檢查專案。 您可以在下列 NuGet 套件中找到最新版的 MSBuild API:
| 封裝名稱 | 說明 |
|---|---|
| Microsoft.Build | 包含用來建立、編輯和評估 MSBuild 專案的 Microsoft.Build 元件。 |
| Microsoft.Build.Framework | 包含其他 MSBuild 組件所使用的通用 MSBuild 框架組件。 |
| Microsoft.Build.Runtime | 提供 MSBuild 的完整可執行文件複本。 只有在您的應用程式需要載入專案或執行進程內建置而不需要安裝 MSBuild 時,才參考此套件。 成功評估使用此套件的專案需要將其他元件(例如編譯程式)彙總到應用程式目錄。 |
| Microsoft.Build.Tasks.Core | 包含實作 MSBuild 常用工作的 Microsoft.Build.Tasks 元件。 |
| Microsoft.Build.Utilities.Core | 包含 Microsoft.Build.Utilities 組件,以用來實作自訂 MSBuild 工作。 |
此外,NuGet 也會裝載已淘汰的舊版元件 Microsoft.Build.Engine。
MSBuild API 有數個不同的版本,而針對 15 和 16 版,NuGet 套件中有兩種不同的元件形式,一種是使用 .NET Framework 編譯,另一種是使用 .NET Core 編譯,這是 .NET Framework API 介面的子集。 當您執行 dotnet 命令,或在 Mac 和 Linux 系統上使用 MSBuild 時,會使用 MSBuild 的 .NET Core 版本。
您可以使用 .NET API 瀏覽器,或瀏覽下列清單中的命名空間,找到 MSBuild API 的檔。
| Namespace | 適用於 | 說明 |
|---|---|---|
| Microsoft.Build.Construction | 全部 | 包含 MSBuild 物件模型用來建構具有未評估值之專案根目錄的類型。 每個專案根目錄都會對應至專案或目標檔案。 |
| Microsoft.Build.Definition | 全部 | 包含支援專案建構的 ProjectOptions 類別。 |
| Microsoft.Build.Evaluation | 全部 | 包含 MSBuild 物件模型用來評估專案的型別。 每個項目都會與一或多個專案根目錄相關聯。 |
| Microsoft.Build.Evaluation.Context | 全部 | 包含類別 EvaluationContext ,用來跨呼叫儲存評估狀態。 |
| Microsoft.Build.Exceptions | 全部 | 包含可能會在建置程式期間擲回的例外狀況類型。 |
| Microsoft.Build.Execution | 全部 | 包含 MSBuild 物件模型用來建置專案的型別。 |
| Microsoft.Build.Framework | 全部 | 包含定義工作和記錄器如何與 MSBuild 引擎互動的類型。 |
| Microsoft.Build.Framework.Profiler | 全部 | 包含支援效能分析的類型。 |
| Microsoft.Build.Framework.XamlTypes | 僅限 .NET Framework | 包含用來表示從檔案、規則和其他來源剖析之 XAML 類型的類別。 |
| Microsoft.Build.Globbing | 全部 | 包含支援通配符處理的類別。 |
| Microsoft.Build.Globbing.Extensions | 全部 | 包含支援通配符處理延伸模組的類型。 |
| Microsoft.Build.Graph | 全部 | 包含支援 -graph MSBuild 參數的類型。 |
| Microsoft.Build.Logging | 全部 | 包含用來記錄組建進度的類型。 |
| Microsoft.Build.ObjectModelRemoting | 全部 | 包含支援 MSBuild 中遠端處理的類型。 |
| Microsoft.Build.Tasks | 全部 | 包含 MSBuild 隨附的所有任務實作。 |
| Microsoft.Build.Tasks.Deployment.Bootstrapper | 僅限 .NET Framework | 包含 MSBuild 內部使用的類別。 |
| Microsoft.Build.Tasks.Deployment.ManifestUtilities | 僅限 .NET Framework | 包含 MSBuild 使用的類別。 |
| Microsoft.Build.Tasks.Hosting | 全部 | 包含 MSBuild 內部使用的類別。 |
| Microsoft.Build.Tasks.Xaml | 僅限 .NET Framework | 包含與 XAML 建置工作相關的類別。 |
| Microsoft.Build.Utilities | 全部 | 包含可用來建立自己的 MSBuild 記錄器和任務的輔助類別。 |
在上表中,[套用至] 數據行中的 [全部] 表示命名空間中的類型可在 .NET Framework 和 MSBuild API 的 .NET Core 版本中使用。
MSBuild 定位器
MSBuild 定位器是一種 API,可用來在機器上尋找 MSBuild。 當您要尋找已安裝的 MSBuild 版本時,您可以在建置工具開發中使用。
NuGetPackage 位於 Microsoft.Build.Locator ,參考文件位於 Microsoft。
如需 MSBuildLocator 的詳細資訊,請參閱 尋找和使用 MSBuild 版本。