Metadati noti degli elementi di MSBuild
I metadati degli elementi sono valori associati agli elementi. Alcuni vengono assegnati da MSBuild agli elementi quando vengono creati gli elementi, ma è anche possibile definire tutti i metadati necessari. Alcuni valori di metadati definiti dall'utente hanno un significato per MSBuild, attività specifiche o SDK, ad esempio .NET SDK.
La prima tabella di questo articolo descrive i metadati assegnati a ogni elemento al momento della creazione. La tabella successiva mostra alcuni metadati facoltativi che hanno un significato per MSBuild, che è possibile definire per controllare il comportamento di compilazione. In ogni esempio è stata usata la dichiarazione di elemento riportata di seguito per includere il file C:\MyProject\Source\Program.cs nel progetto.
<ItemGroup>
<MyItem Include="Source\Program.cs" />
</ItemGroup>
Metadati degli elementi | Descrizione |
---|---|
%(FullPath) | Contiene il percorso completo dell'elemento. Ad esempio: C:\MyProject\Source\Program.cs |
%(RootDir) | Contiene la directory radice dell'elemento. Ad esempio: C:\ |
%(Filename) | Contiene il nome file dell'elemento, senza estensione. Ad esempio: Programma |
%(Extension) | Contiene l'estensione del nome file dell'elemento. Ad esempio: .cs |
%(RelativeDir) | Contiene il percorso specificato nell'attributo Include , fino alla barra rovesciata finale (\). Ad esempio:Fonte\ Se l'attributo Include è un percorso completo, %(RelativeDir) inizia con la directory %(RootDir) radice . Ad esempio: C:\MyProject\Source\ |
%(Directory) | Contiene la directory dell'elemento, senza la directory radice. Ad esempio: MyProject\Source\ |
%(RecursiveDir) | Se l'attributo Include contiene il carattere jolly **, questi metadati specificano la parte del percorso che sostituisce il carattere jolly. Per altre informazioni sui caratteri jolly, vedere Procedura: Selezionare i file da compilare.Se la cartella C:\MySolution\MyProject\Source\ contiene il file Program.cs e se il file di progetto contiene questo elemento: <ItemGroup> <MyItem Include="C:\**\Program.cs" /> </ItemGroup> quindi il valore di %(MyItem.RecursiveDir) sarebbe MySolution\MyProject\Source\. |
%(Identity) | Elemento specificato nell'attributo Include . Ad esempio:Source\Program.cs |
%(ModifiedTime) | Contiene il timestamp relativo all'ultima modifica dell'elemento. Ad esempio:2004-07-01 00:21:31.5073316 |
%(CreatedTime) | Contiene il timestamp relativo alla creazione dell'elemento. Ad esempio:2004-06-25 09:26:45.8237425 |
%(AccessedTime) | Contiene il timestamp relativo all'ora dell'ultimo accesso all'elemento.2004-08-14 16:52:36.3168743 |
%(DefiningProjectFullPath) | Contiene il percorso completo del file di progetto (o del file importato) che definisce questo elemento. |
%(DefiningProjectDirectory) | Contiene la directory del progetto del file di progetto (o file importato) che definisce questo elemento. |
%(DefiningProjectName) | Contiene il nome del file di progetto (o file importato) che definisce questo elemento (senza l'estensione). |
%(DefiningProjectExtension) | Contiene l'estensione del file di progetto (o del file importato) che definisce questo elemento. |