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
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 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.