Partilhar via


Metadados de itens bem conhecidos do MSBuild

Os metadados do item são valores anexados aos itens. Alguns são atribuídos pelo MSBuild a itens quando os itens são criados, mas você também pode definir quaisquer metadados necessários. Alguns valores de metadados definidos pelo usuário têm significado para MSBuild, tarefas específicas ou SDKs, como o SDK do .NET.

A tabela neste artigo descreve os metadados atribuídos a cada item durante a criação. A tabela a seguir mostra alguns metadados opcionais que têm significado para MSBuild, que você pode definir para controlar o comportamento de compilação. Em cada exemplo, a seguinte declaração de item foi usada para incluir o arquivo C:\MyProject\Source\Program.cs no projeto.

<ItemGroup>
    <MyItem Include="Source\Program.cs" />
</ItemGroup>
Metadados do item Descrição
%(FullPath) Contém o caminho completo do item. Por exemplo:

C:\MyProject\Source\Program.cs
%(RootDir) Contém o diretório raiz do item. Por exemplo:

C:\
%(nome do arquivo) Contém o nome do arquivo do item, sem a extensão. Por exemplo:

Programa
%(Extensão) Contém a extensão de nome de arquivo do item. Por exemplo:

.cs
%(RelativeDir) Contém o caminho especificado no atributo Include, até a barra invertida final (\). Por exemplo:

Fonte\

Se o atributo Include for um caminho completo, %(RelativeDir) começará com o diretório raiz %(RootDir). Por exemplo:

C:\MyProject\Source\
%(Diretório) Contém o diretório do item, sem o diretório raiz. Por exemplo:

MyProject\Source\
%(RecursiveDir) Se o atributo Include contiver o curinga **, esses metadados especificarão a parte do caminho que substitui o curinga. Para obter mais informações sobre curingas, consulte Como selecionar os arquivos para criar.

Se a pasta C:\MySolution\MyProject\Source\ contiver o arquivo Program.cs, e se o arquivo de projeto contiver este item:

<ItemGroup>

<MyItem Include="C:\**\Program.cs" />

</ItemGroup>

então o valor de %(MyItem.RecursiveDir) seria MySolution\MyProject\Source\.
%(Identidade) O item especificado no atributo Include. Por exemplo:

Fonte\Program.cs
%(ModifiedTime) Contém o carimbo de data/hora da última vez que o item foi modificado. Por exemplo:

2004-07-01 00:21:31.5073316
%(CreatedTime) Contém o carimbo de data/hora de quando o item foi criado. Por exemplo:

2004-06-25 09:26:45.8237425
%(AccessedTime) Contém o carimbo de data/hora da última vez que o item foi acessado.

2004-08-14 16:52:36.3168743
%(DefiningProjectFullPath) Contém o caminho completo do arquivo de projeto (ou arquivo importado) que define este item.
%(DefiningProjectDirectory) Contém o diretório do projeto do arquivo de projeto (ou arquivo importado) que define este item.
%(DefiningProjectName) Contém o nome do arquivo de projeto (ou arquivo importado) que define este item (sem a extensão).
%(DefiningProjectExtension) Contém a extensão do arquivo de projeto (ou arquivo importado) que define este item.

Ver também