Project-Element (MSBuild)

Erforderliches Stammelement einer MSBuild-Projektdatei.

Syntax

<Project InitialTargets="TargetA;TargetB"
         DefaultTargets="TargetC;TargetD"
         TreatAsLocalProperty="PropertyA;PropertyB"
         ToolsVersion="<version number>"
         Sdk="name[/version]"
         xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
    <Sdk... />
    <Choose>... </Choose>
    <PropertyGroup>... </PropertyGroup>
    <ItemGroup>... </ItemGroup>
    <Target>... </Target>
    <UsingTask.../>
    <ProjectExtensions>... </ProjectExtensions>
    <Import... />
</Project>

Attribute und Elemente

In den folgenden Abschnitten werden Attribute sowie untergeordnete und übergeordnete Elemente beschrieben.

Attribute

Attribut Beschreibung
DefaultTargets Optionales Attribut.

Das Standardziel oder die Standardziele, die zum Einstiegspunkt des Builds werden, wenn kein Ziel angegeben wurde. Mehrere Ziele werden durch Semikolons (;) getrennt.

Wenn kein Standardziel im DefaultTargets-Attribut oder über die MSBuild-Befehlszeile angegeben wurde, führt die Engine das erste Ziel in der Projektdatei aus, nachdem die Import-Elemente ausgewertet wurden.
InitialTargets Optionales Attribut.

Die anfänglichen Ziele werden ausgeführt bevor die Ziele im DefaultTargets-Attribut oder in der Befehlszeile angegeben werden . Mehrere Ziele werden durch ein Semikolon (;) getrennt. Wenn mehrere importierte Dateien InitialTargets definieren, werden alle aufgeführten Ziele in der Reihenfolge ausgeführt, in der die Importe ermittelt werden.
Sdk Optionales Attribut.

Der SDK-Name und optional die Version, mit denen implizite Importanweisungen, die der PROJ-Datei hinzugefügt werden, erstellt werden. Wenn keine Version angegeben wird, versucht MSBuild eine Standardversion aufzulösen. Zum Beispiel: <Project Sdk="Microsoft.NET.Sdk" /> oder <Project Sdk="My.Custom.Sdk/1.0.0" />.
ToolsVersion Optionales Attribut.

Die Version des Toolsets, das MSBuild verwendet, um die Werte für $(MSBuildBinPath) und (MSBuildToolsPath) zu bestimmen.
TreatAsLocalProperty Optionales Attribut.

Eigenschaftennamen, die nicht als global betrachtet werden. Dieses Attribut verhindert, dass bestimmte Befehlszeileneigenschaften Eigenschaftswerte überschreiben, die in einer Projekt- oder Zieldatei und allen nachfolgenden Importen festgelegt sind. Mehrere Eigenschaften werden durch Semikolons (;) getrennt.

Diese globalen Eigenschaften überschreiben normalerweise Eigenschaftswerte, die in der Projektdatei oder in Zieldateien festgelegt werden. Wenn die Eigenschaft im TreatAsLocalProperty-Wert aufgeführt wird, überschreibt der globale Eigenschaftenwert die Eigenschaftenwerte nicht, die in dieser Datei und allen nachfolgenden Importen festgelegt werden. Weitere Informationen finden Sie unter Vorgehensweise: Erstellen identischer Quelldateien mit unterschiedlichen Optionen. Hinweis: Sie legen globale Eigenschaften in der Eingabeaufforderung mit dem Schalter -Eigenschaft (oder -p) fest. Globale Eigenschaften können auch für untergeordnete Projekte in einem Build mit mehreren Projekten festgelegt oder geändert werden, indem das Properties-Attribut der MSBuild-Aufgabe verwendet wird. Weitere Informationen finden Sie unter MSBuild-Aufgabe.
xmlns Optionales Attribut.

Wenn das xmlns-Attribut angegeben wird, muss als Wert http://schemas.microsoft.com/developer/msbuild/2003 festgelegt sein.

Untergeordnete Elemente

Element Beschreibung
Auswählen Optionales Element.

Bewertet untergeordnete Elemente, um einen Satz von auszuwertenden ItemGroup-Elementen und/oder PropertyGroup-Elementen auszuwählen.
Importieren Optionales Element.

Ermöglicht den Import einer Projektdatei in eine andere Projektdatei. Es kann kein oder mehrere Import-Elemente in einem Projekt geben.
ImportGroup Optionales Element.

Enthält eine Sammlung von Import-Elementen, die unter einer optionalen Bedingung gruppiert sind.
ItemGroup Optionales Element.

Ein Gruppierungselement für einzelne Elemente. Elemente werden mit dem Item-Element angegeben. Es kann kein oder mehrere ItemGroup-Elemente in einem Projekt geben.
ItemDefinitionGroup Optionales Element.

Mit diesem Element können Sie Elementdefinitionen festlegen, die Metadatenwerte sind, die standardmäßig auf alle Elemente im Projekt angewandt werden. Mit ItemDefinitionGroup ist die Verwendung der CreateItem-Aufgabe und der CreateProperty-Aufgabe überflüssig.
ProjectExtensions Optionales Element.

Bietet eine Möglichkeit, Nicht-MSBuild-Informationen in einer MSBuild-Projektdatei beizubehalten. Es kann kein oder mehrere ProjectExtensions-Elemente in einem Projekt geben.
PropertyGroup Optionales Element.

Ein Gruppierungselement für einzelne Eigenschaften. Eigenschaften werden mit dem Property-Element angegeben. Es kann kein oder mehrere PropertyGroup-Elemente in einem Projekt geben.
Sdk Optionales Element.

Verweist auf ein MSBuild-Projekt SDK. Dieses Element kann alternativ zum Sdk-Attribut verwendet werden.
Ziel Optionales Element.

Enthält eine Reihe von Aufgaben, die MSBuild sequenziell ausführt. Aufgaben werden mit dem Aufgaben-Element angegeben. Es kann kein oder mehrere Target-Elemente in einem Projekt geben.
UsingTask Optionales Element.

Bietet eine Möglichkeit, Aufgaben in MSBuild zu registrieren. Es kann kein oder mehrere UsingTask-Elemente in einem Projekt geben.

Übergeordnete Elemente

Keine.

Weitere Informationen