Partilhar via


Itens de projeto comuns do MSBuild

No MSBuild, um item é uma referência nomeada para um ou mais arquivos. Os itens contêm metadados, como nomes de arquivos, caminhos e números de versão. Todos os tipos de projeto no Visual Studio têm vários itens em comum. Esses itens são definidos no arquivo Microsoft.Build.CommonTypes.xsd.

Este artigo lista todos os itens comuns do projeto.

Reference

Representa uma referência de assembly (gerenciada) no projeto.

Nome dos metadados do item Descrição
DicasCaminho Cadeia de caracteres opcional. Caminho relativo ou absoluto da montagem.
Designação Cadeia de caracteres opcional. O nome para exibição do assembly, por exemplo, "System.Windows.Forms".
FusionName Cadeia de caracteres opcional. Especifica o nome de fusão simples ou forte para o item.

Quando esse atributo está presente, ele pode economizar tempo porque o arquivo assembly não precisa ser aberto para obter o nome de fusão.
Versão específica Booleano opcional. Especifica se apenas a versão no nome de fusão deve ser referenciada.
Pseudónimos Cadeia de caracteres opcional. Quaisquer aliases para a referência.
Privado Booleano opcional. Especifica se a referência deve ser copiada para a pasta de saída. Esse atributo corresponde à propriedade Copy Local da referência que está no IDE do Visual Studio.

COMReferência

Representa uma referência de componente COM (não gerenciado) no projeto. Este item aplica-se apenas a projetos .NET.

Nome dos metadados do item Descrição
Designação Cadeia de caracteres opcional. O nome para exibição do componente.
Guid Cadeia de caracteres necessária. Um GUID para o componente, no formato {12345678-1234-1234-1234-123456781234}.
VersãoMajor Cadeia de caracteres necessária. A maior parte do número da versão do componente. Por exemplo, "5" se o número da versão completa for "5.46".
VersãoMinor Cadeia de caracteres necessária. A parte secundária do número da versão do componente. Por exemplo, "46" se o número da versão completa for "5.46".
EmbedInteropTypes Booleano opcional. Se verdadeiro, incorpore os tipos de interoperabilidade dessa referência diretamente em seu assembly em vez de gerar uma DLL de interoperabilidade.
Lcid Cadeia de caracteres opcional. O LocaleID para o componente.
WrapperTool Cadeia de caracteres opcional. O nome da ferramenta wrapper que é usada no componente. Os valores são:

1. primário
2. TLBIMP
3. primário ortlbimp
4. aximp
Isolado Booleano opcional. Especifica se o componente é um componente livre de reg.

COMFileReference

Representa uma lista de bibliotecas de tipos que são passadas para o parâmetro do destino ResolveComReference. Este item aplica-se apenas a projetos .NET.

Nome dos metadados do item Descrição
WrapperTool Cadeia de caracteres opcional. O nome da ferramenta wrapper que é usada no componente. Os valores são:

1. primário
2. TLBIMP
3. primário ortlbimp
4. aximp

NativeReference

Representa um arquivo de manifesto nativo ou uma referência a esse arquivo.

Nome dos metadados do item Descrição
Designação Cadeia de caracteres necessária. O nome base do arquivo de manifesto.
DicasCaminho Cadeia de caracteres necessária. O caminho relativo do arquivo de manifesto.

Referência do Projeto

Representa uma referência a outro projeto. ProjectReference itens são transformados em itens Reference pelo destino ResolveProjectReferences, portanto, quaisquer metadados válidos em uma Referência podem ser válidos em ProjectReference, se o processo de transformação não os substituir.

Nome dos metadados do item Descrição
Designação Cadeia de caracteres opcional. O nome para exibição da referência.
GlobalPropertiesToRemove Opcional string[]. Nomes de propriedades a serem removidas ao criar o projeto referenciado, por exemplo, RuntimeIdentifier;PackOnBuild. O padrão é vazio.
Projeto Cadeia de caracteres opcional. Um GUID para a referência, no formato {12345678-1234-1234-1234-123456781234}.
OutputItemType Cadeia de caracteres opcional. Tipo de item para o qual emitir saídas de destino. O padrão está em branco. Se os metadados de referência estiverem definidos como "true" (padrão), as saídas de destino se tornarão referências para o compilador.
ReferenceOutputAssembly Booleano opcional. Se definido como , não inclui a saída do projeto referenciado como uma de referência de deste projeto, mas ainda garante que o outro projeto seja compilado antes deste. O padrão é true.
Privado Booleano opcional. Especifica se a referência deve ser copiada para a pasta de saída. Esse atributo corresponde à propriedade Copy Local da referência que está no IDE do Visual Studio.
SetConfiguration Cadeia de caracteres opcional. Define a propriedade global Configuration para o projeto referenciado, por exemplo, Configuration=Release.
Plataforma Definida Cadeia de caracteres opcional. Define a propriedade global Platform para o projeto referenciado, por exemplo, Platform=AnyCPU.
SetTargetFramework Cadeia de caracteres opcional. Define a propriedade global TargetFramework para o projeto referenciado, por exemplo, TargetFramework=netstandard2.0.
SkipGetTargetFrameworkProperties Booleano opcional. Se true, constrói o projeto referenciado sem negociar o valor de TargetFramework mais compatível. O padrão é false.
Objetivos Opcional string[]. Lista separada por ponto-e-vírgula de destinos nos projetos referenciados que devem ser construídos. Padrão é o valor de $(ProjectReferenceBuildTargets), que assume como padrão vazio, indicando os destinos padrão. Ao criar no Visual Studio (ao contrário de MSBuild.exe ou dotnet build), especificar isso não impede que o Visual Studio crie os destinos padrão do projeto referenciado.

Observação

Há uma diferença entre como as referências de projeto funcionam entre o .NET Framework e o .NET Core (incluindo o .NET 5 e posterior). Em projetos do .NET Framework, as referências de projeto não são transitivas. Ou seja, se Project1 faz referência a Project2 e Project2 faz referência a Project3, você não pode codificar contra Project3 de Project1. No entanto, no .NET Core (incluindo o .NET 5 e posterior), as referências de projeto são transitivas. Você pode codificar contra Project3 em Project1.

Compilar

Representa os arquivos de origem para o compilador.

Nome dos metadados do item Descrição
Dependente. Cadeia de caracteres opcional. Especifica o arquivo do qual esse arquivo depende para compilar corretamente.
AutoGen Booleano opcional. Indica se o arquivo foi gerado para o projeto pelo ambiente de desenvolvimento integrado (IDE) do Visual Studio.
Ligação Cadeia de caracteres opcional. O caminho notacional a ser exibido quando o arquivo está fisicamente localizado fora da influência do arquivo de projeto.
Visível Booleano opcional. Indica se o arquivo deve ser exibido em Gerenciador de Soluções no Visual Studio.
CopyToOutputDirectory Cadeia de caracteres opcional. Determina se o arquivo deve ser copiado para o diretório de saída. Os valores são:

1. Nunca
2. Sempre
3. PreservarMais recente
4. SeDiferente

EmbeddedResource

Representa os recursos a serem incorporados no assembly gerado.

Nome dos metadados do item Descrição
Cultura Cadeia de caracteres opcional. Especifica a cultura do arquivo de recurso. Se especificado, o processo de compilação não infere automaticamente a cultura com base na extensão de arquivo (que depende das culturas disponíveis para o .NET/OS na máquina que hospeda a compilação). É altamente recomendável definir metadados Culture={culture identifier} ou WithCulture=false.
ComCultura Bool opcional. Especifica que o arquivo é neutro em termos de cultura e que a deteção de cultura por AssignCulture tarefa deve ser ignorada. É altamente recomendável definir metadados Culture={culture identifier} ou WithCulture=false.
Dependente. Cadeia de caracteres opcional. Especifica o arquivo do qual esse arquivo depende para compilar corretamente
Gerador Cadeia de caracteres opcional. O nome de qualquer gerador de arquivos que é executado neste item.
LastGenOutput Cadeia de caracteres opcional. O nome do arquivo que foi criado por qualquer gerador de arquivos executado neste item.
CustomToolNamespace Cadeia de caracteres opcional. O namespace no qual qualquer gerador de arquivos executado neste item deve criar código.
Ligação Cadeia de caracteres opcional. O caminho notacional é exibido se o arquivo estiver fisicamente localizado fora da influência do projeto.
Visível Booleano opcional. Indica se o arquivo deve ser exibido em Gerenciador de Soluções no Visual Studio.
CopyToOutputDirectory Cadeia de caracteres opcional. Determina se o arquivo deve ser copiado para o diretório de saída. Os valores são:

1. Nunca
2. Sempre
3. PreservarMais recente
4. SeDiferente
LogicalName Cadeia de caracteres necessária. O nome lógico do recurso incorporado.

Conteúdo

Representa arquivos que não são compilados no projeto, mas podem ser incorporados ou publicados junto com ele.

Nome dos metadados do item Descrição
Dependente. Cadeia de caracteres opcional. Especifica o arquivo do qual esse arquivo depende para compilar corretamente.
Gerador Cadeia de caracteres opcional. O nome de qualquer gerador de arquivos executado neste item.
LastGenOutput Cadeia de caracteres opcional. O nome do arquivo que foi criado por qualquer gerador de arquivos que foi executado neste item.
CustomToolNamespace Cadeia de caracteres opcional. O namespace no qual qualquer gerador de arquivos executado neste item deve criar código.
Ligação Cadeia de caracteres opcional. O caminho notacional a ser exibido se o arquivo estiver fisicamente localizado fora da influência do projeto.
PublishState Cadeia de caracteres necessária. O estado de publicação do conteúdo:

- Inadimplência
- Incluído
- Excluído
- Ficheiro de Dados
- Pré-requisito
IsAssembly Booleano opcional. Especifica se o arquivo é um assembly.
Visível Booleano opcional. Indica se o arquivo deve ser exibido em Gerenciador de Soluções no Visual Studio.
CopyToOutputDirectory Cadeia de caracteres opcional. Determina se o arquivo deve ser copiado para o diretório de saída. Os valores são:

1. Nunca
2. Sempre
3. PreservarMais recente
4. SeDiferente
TargetPath Cadeia de caracteres opcional. O caminho de saída (relativo ao diretório de saída específico da configuração e/ou plataforma) de um item, incluindo o nome do arquivo. Isso respeita os metadados Link, se fornecidos. Se o TargetPath não for fornecido, ele será calculado durante o processo de compilação. Consulte AssignTargetPath.

Nenhum

Representa arquivos que não devem ter nenhuma função no processo de compilação.

Nome dos metadados do item Descrição
Dependente. Cadeia de caracteres opcional. Especifica o arquivo do qual esse arquivo depende para compilar corretamente.
Gerador Cadeia de caracteres opcional. O nome de qualquer gerador de arquivos que é executado neste item.
LastGenOutput Cadeia de caracteres opcional. O nome do arquivo que foi criado por qualquer gerador de arquivos executado neste item.
CustomToolNamespace Cadeia de caracteres opcional. O namespace no qual qualquer gerador de arquivos executado neste item deve criar código.
Ligação Cadeia de caracteres opcional. O caminho notacional a ser exibido se o arquivo estiver fisicamente localizado fora da influência do projeto.
Visível Booleano opcional. Indica se o arquivo deve ser exibido em Gerenciador de Soluções no Visual Studio.
CopyToOutputDirectory Cadeia de caracteres opcional. Determina se o arquivo deve ser copiado para o diretório de saída. Os valores são:

1. Nunca
2. Sempre
3. PreservarMais recente
4. SeDiferente

Metadados de montagem

Representa atributos de assembly a serem gerados como [AssemblyMetadata(key, value)].

Nome dos metadados do item Descrição
Incluir Torna-se o primeiro parâmetro (a chave) no construtor de atributo AssemblyMetadataAttribute.
Valor Cadeia de caracteres necessária. Torna-se o segundo parâmetro (o valor) no construtor do atributo AssemblyMetadataAttribute.

Observação

Este item se aplica a projetos que usam o SDK para .NET 5 (e .NET Core) e versões posteriores.

InternalsVisibleTo

Especifica assemblies a serem emitidos como atributos de assembly [InternalsVisibleTo(..)].

Nome dos metadados do item Descrição
Incluir O nome do assembly.
Chave Cadeia de caracteres opcional. A chave pública da assembleia.

Observação

Este item se aplica a projetos que usam o SDK para .NET 5 (e .NET Core) e versões posteriores.

BaseApplicationManifest

Representa o manifesto do aplicativo base para a compilação e contém informações de segurança de implantação do ClickOnce.

CodeAnalysisImport

Representa o projeto FxCop a ser importado.

Importação

Representa assemblies cujos namespaces devem ser importados pelo compilador do Visual Basic.

Pasta

Este elemento só é usado pelo Visual Studio como um espaço reservado para uma pasta vazia. Quando a pasta é preenchida, ela é substituída por outro elemento.

Ver também