Item-Element (MSBuild)
Enthält ein benutzerdefiniertes Element und die entsprechenden Metadaten. Jedes Element, das in einem MSBuild-Projekt verwendet wird, muss als untergeordnetes Element eines ItemGroup-Elements angegeben werden.
<Item Include="*.cs"
Exclude="MyFile.cs"
Remove="RemoveFile.cs"
Condition="'String A'=='String B'" >
<ItemMetadata1>...</ItemMetadata1>
<ItemMetadata2>...</ItemMetadata2>
</Item>
Attribute und Elemente
In den folgenden Abschnitten werden Attribute, untergeordnete Elemente und übergeordnete Elemente beschrieben.
Attribute
Attribute |
Beschreibungen |
---|---|
Include |
Erforderliches Attribut. Die Datei oder der Platzhalter, der in die Liste der Elemente aufgenommen werden soll. |
Exclude |
Optionales Attribut. Die Datei oder der Platzhalter, der aus der Liste der Elemente ausgeschlossen werden soll. |
Remove |
Optionales Attribut. Die Datei oder der Platzhalter, der aus der Liste der Elemente entfernt werden soll. Dieses Attribut ist nur gültig, wenn es für ein Element in einer ItemGroup in einem Targetangegeben wird. |
Condition |
Optionales Attribut. Die Bedingung wird ausgewertet. Weitere Informationen finden Sie unter MSBuild-Bedingungen. |
Untergeordnete Elemente
Element |
Beschreibungen |
---|---|
Ein benutzerdefinierter Elementmetadatenschlüssel, der den Elementmetadatenwert enthält. Es kann keine oder mehrere ItemMetadata-Elemente in einem Element geben. |
Übergeordnete Elemente
Element |
Beschreibungen |
---|---|
Gruppierungselement für Elemente. |
Hinweise
Item-Elemente definieren Eingaben ins Buildsystem und werden anhand ihrer benutzerdefinierten Auflistungsnamen in Elementauflistungen gruppiert. Diese Elementauflistungen können als Parameter für Aufgaben dienen, in denen die einzelnen Elemente der Auflistung verwendet werden, um die Schritte des Buildprozesses auszuführen. Weitere Informationen finden Sie unter MSBuild-Elemente.
Mithilfe der Notation @(myType) kann eine Auflistung von Elementen des Typs myType in eine durch Semikolons Liste von Zeichenfolgen erweitert und an einen Parameter übergeben werden. Wenn der Parameter den Typ string aufweist, entspricht sein Wert der durch Semikolons getrennten Liste von Elementen. Handelt es sich bei dem Parameter um ein Zeichenfolgenarray (string[]), dann wird jedes einzelne Element in das Array eingefügt. Als Trennzeichen gelten dabei die Semikolons. Wenn der Aufgabenparameter den Typ ITaskItem[] aufweist, entspricht sein Wert dem Inhalt der Elementauflistung einschließlich ggf. angefügter Metadaten. Um die einzelnen Elemente durch ein anderes Zeichen als ein Semikolon voneinander zu trennen, verwenden Sie die Syntax @(myType, 'separator').
Die MSBuild-Engine kann Platzhalter wie * und ? und rekursive Platzhalter wie /**/*.cs auswerten. Weitere Informationen finden Sie unter MSBuild-Elemente.
Beispiel
Im folgenden Codebeispiel wird veranschaulicht, wie zwei Elemente des Typs CSFile deklariert werden. Das zweite deklarierte Element enthält Metadaten, bei denen myAttribute auf HelloWorld festgelegt ist.
<ItemGroup>
<CSFile Include="engine.cs; form.cs" />
<CSFile Include="main.cs" >
<MyMetadata>HelloWorld</MyMetadata>
</CSFile>
</ItemGroup>