Použití rozhraní MSBuild API

MSBuild poskytuje veřejnou plochu rozhraní API, aby váš program mohl provádět sestavení a kontrolovat projekty. Nejnovější verze rozhraní API nástroje MSBuild najdete v následujících balíčcích NuGet:

Název balíčku Popis
Microsoft.Build Obsahuje sestavení Microsoft.Build, které slouží k vytváření, úpravám a vyhodnocování projektů MSBuild.
Microsoft.build.framework Obsahuje společné sestavení architektury MSBuild používané jinými sestaveními NÁSTROJE MSBuild.
Microsoft.Build.Runtime Doručí úplnou spustitelné kopii nástroje MSBuild. Odkazovat na tento balíček pouze v případě, že vaše aplikace potřebuje načíst projekty nebo spouštět sestavení v procesu bez nutnosti instalace nástroje MSBuild. Úspěšné vyhodnocení projektů pomocí tohoto balíčku vyžaduje agregaci dalších komponent (jako jsou kompilátory) do adresáře aplikace.
Microsoft.Build.Tasks.Core Obsahuje sestavení Microsoft.Build.Tasks, které implementuje běžně používané úlohy nástroje MSBuild.
Microsoft.Build.Utilities.Core Obsahuje sestavení Microsoft.Build.Utilities, které slouží k implementaci vlastních úloh MSBuild.

NuGet navíc hostuje starší sestavení Microsoft.Build.Engine, které je zastaralé.

Existuje několik různých verzí rozhraní MSBuild API a pro verze 15 a 16 existují dvě odlišné formy sestavení v balíčcích NuGet, jedna zkompilovaná s rozhraním .NET Framework a další kompilovaná pomocí .NET Core, což je podmnožina povrchu rozhraní .NET Framework API. Verze .NET Core nástroje MSBuild se používá při vyvolání dotnet příkazu a při použití nástroje MSBuild v systémech Mac a Linux.

Dokumentaci k rozhraní MSBuild API najdete pomocí prohlížeče rozhraní .NET API nebo procházením oborů názvů v následujícím seznamu.

Obor názvů Platí pro Popis
Microsoft.Build.Construction Všechny Obsahuje typy, které objektový model MSBuild používá k vytvoření kořenů projektu s nehodnocenými hodnotami. Každý kořen projektu odpovídá souboru projektu nebo cílů.
Microsoft.Build.Definition Všechny ProjectOptions Obsahuje třídu, která podporuje projektové konstrukce.
Microsoft.build.evaluation Všechny Obsahuje typy, které objektový model MSBuild používá k vyhodnocení projektů. Každý projekt je přidružený k jednomu nebo více kořenovým projektům.
Microsoft.Build.Evaluation.Context Všechny EvaluationContext Obsahuje třídu, která se používá k ukládání stavu vyhodnocení napříč voláními.
Microsoft.build.exceptions Všechny Obsahuje typy výjimek, které mohou být vyvolán během procesu sestavení.
Microsoft.build.execution Všechny Obsahuje typy, které objektový model MSBuild používá k sestavení projektů.
Microsoft.build.framework Všechny Obsahuje typy, které definují, jak úlohy a protokolovací nástroje interagují s modulem MSBuild.
Microsoft.Build.Framework.Profiler Všechny Obsahuje typy, které podporují profilaci výkonu.
Microsoft.build.framework.xamltypes Pouze rozhraní .NET Framework Obsahuje třídy používané k reprezentaci typů XAML parsovaných ze souborů, pravidel a dalších zdrojů.
Microsoft.Build.Globbing Všechny Obsahuje třídy, které podporují zpracování zástupných znaků.
Microsoft.Build.Globbing.Extensions Všechny Obsahuje typy, které podporují rozšíření pro zpracování zástupných znaků.
Microsoft.Build.Graph Všechny Obsahuje typy, které podporují -graph přepínač MSBuild.
Microsoft.build.logging Všechny Obsahuje typy používané k protokolování průběhu sestavení.
Microsoft.Build.ObjectModelRemoting Všechny Obsahuje typy, které podporují vzdálené komunikace v nástroji MSBuild.
Microsoft.build.tasks Všechny Obsahuje implementaci všech úkolů expediční pomocí nástroje MSBuild.
Microsoft.Build.Tasks.Deployment.Bootstrapper Pouze rozhraní .NET Framework Obsahuje třídy používané interně nástrojem MSBuild.
Microsoft.Build.Tasks.Deployment.ManifestUtilities Pouze rozhraní .NET Framework Obsahuje třídy, které MSBuild používá.
Microsoft.build.tasks.hosting Všechny Obsahuje třídy používané interně nástrojem MSBuild.
Microsoft.build.tasks.xaml Pouze rozhraní .NET Framework Obsahuje třídy související s úlohami sestavení XAML.
Microsoft.build.utilities Všechny Obsahuje pomocné třídy, které můžete použít k vytvoření vlastních protokolovacích nástrojů MSBuild a úloh.

V předchozí tabulce platí pro sloupec Vše znamená, že typy v oboru názvů jsou k dispozici v rozhraní .NET Framework i ve verzích rozhraní .NET Core rozhraní MSBuild API.