BuildItem Classe
Este artigo foi traduzido por máquina. Para visualizar o arquivo em inglês, marque a caixa de seleção Inglês. Você também pode exibir o texto Em inglês em uma janela pop-up, movendo o ponteiro do mouse sobre o texto.
Tradução
Inglês

Classe BuildItem

 

Representa um único item em uma MSBuild projeto. 

Namespace:   Microsoft.Build.BuildEngine
Assembly:  Microsoft.Build.Engine (em Microsoft.Build.Engine.dll)

System.Object
  Microsoft.Build.BuildEngine.BuildItem

public class BuildItem

NomeDescrição
System_CAPS_pubmethodBuildItem(String, ITaskItem)

Inicializa uma nova instância do BuildItem classe com base em um ITaskItem objeto.

System_CAPS_pubmethodBuildItem(String, String)

Inicializa uma nova instância do BuildItem classe com especificado Name e Include valores de propriedade.

NomeDescrição
System_CAPS_pubpropertyCondition

Obtém ou define o Condition valor do item do atributo.

System_CAPS_pubpropertyCustomMetadataCount

Obtém o número de atributos personalizados definidos neste item.

System_CAPS_pubpropertyCustomMetadataNames

Obtém todos os nomes de atributo definido pelo usuário ou personalizados.

System_CAPS_pubpropertyExclude

Obtém ou define o Exclude valor do item do atributo.

System_CAPS_pubpropertyFinalItemSpec

Obtém a especificação final do item depois que todos os caracteres curinga e propriedades tenham sido avaliadas.

System_CAPS_pubpropertyInclude

Obtém ou define o Include de atributo que criou o BuildItem.

System_CAPS_pubpropertyIsImported

Obtém um valor que indica se o item foi importado para o projeto.

System_CAPS_pubpropertyMetadataCount

Obtém o número de metadados definidas no item

System_CAPS_pubpropertyMetadataNames

Obtém os nomes de metadados no item, incluindo modificadores de item-spec predefinidos ou reservados.

System_CAPS_pubpropertyName

Obtém ou define o nome da coleção de itens ao qual o item pertence.

NomeDescrição
System_CAPS_pubmethodClone()

Cria uma cópia superficial do BuildItem.

System_CAPS_pubmethodCopyCustomMetadataTo(BuildItem)

Copia todos os metadados de item nesta BuildItem especificado BuildItem.

System_CAPS_pubmethodEquals(Object)

Verifica se o objeto especificado é igual ao objeto atual. (Herdado de Object.)

System_CAPS_protmethodFinalize()

Permite que um objeto tente liberar recursos e executar outras operações de limpeza antes que ele seja recuperado pela coleta de lixo. (Herdado de Object.)

System_CAPS_pubmethodGetEvaluatedMetadata(String)

Retorna o valor dos metadados do item especificado após depois que todas as referências de item e a propriedade tenham sido avaliadas.

System_CAPS_pubmethodGetHashCode()

Serve como a função de hash padrão.(Herdado de Object.)

System_CAPS_pubmethodGetMetadata(String)

Retorna o valor dos metadados do item especificado.

System_CAPS_pubmethodGetType()

Obtém o Type da instância atual.(Herdado de Object.)

System_CAPS_pubmethodHasMetadata(String)

Indica se o item tem os metadados do item especificado.

System_CAPS_protmethodMemberwiseClone()

Cria uma cópia superficial do atual Object.(Herdado de Object.)

System_CAPS_pubmethodRemoveMetadata(String)

Remove os metadados do item especificado.

System_CAPS_pubmethodSetMetadata(String, String)

Atribui o valor especificado para os metadados do item especificado.

System_CAPS_pubmethodSetMetadata(String, String, Boolean)

Atribui o valor especificado para os metadados do item especificado e, opcionalmente, trata os metadados como um valor literal.

System_CAPS_pubmethodToString()

Retorna uma string que representa o objeto atual.(Herdado de Object.)

Um elemento em um projeto pode representar vários itens com o uso de curingas. Portanto, cada BuildItem objeto não representa necessariamente um Item elemento no projeto.

O exemplo a seguir cria um Project e usa o LoadXml método para adicionar conteúdo ao projeto. O BuildItem, BuildItemGroup, e BuildItemGroupCollection classes são usadas para adicionar, remover e alterar itens no projeto.

using System;
using System.Collections.Generic;
using System.Text;

using Microsoft.Build.BuildEngine;

namespace AddNewItem
{
    class Program
    {
        /// <summary>
        /// This code demonstrates the use of the following methods:
        ///     Engine constructor
        ///     Project constructor
        ///     Project.LoadFromXml
        ///     Project.Xml
        ///     BuildItemGroupCollection.GetEnumerator
        ///     BuildItemGroup.GetEnumerator
        ///     BuildItem.Name (get)
        ///     BuildItem.Include (set)
        ///     BuildItem.GetMetadata
        ///     BuildItem.SetMetadata
        ///     BuildItemGroup.RemoveItem
        ///     BuildItemGroup.AddNewItem
        /// </summary>
        /// <param name="args"></param>
        static void Main(string[] args)
        {
            // Create a new Engine object.
            Engine engine = new Engine(Environment.CurrentDirectory);

            // Create a new Project object.
            Project project = new Project(engine);

            // Load the project with the following XML, which contains
            // two ItemGroups.
            project.LoadXml(@"
                <Project xmlns='http://schemas.microsoft.com/developer/msbuild/2003'>

                    <ItemGroup>
                        <Compile Include='Program.cs'/>
                        <Compile Include='Class1.cs'/>
                        <RemoveThisItemPlease Include='readme.txt'/>
                    </ItemGroup>

                    <ItemGroup>
                        <EmbeddedResource Include='Strings.resx'>
                            <LogicalName>Strings.resources</LogicalName>
                            <Culture>fr-fr</Culture>
                        </EmbeddedResource>
                    </ItemGroup>

                </Project>
                ");

            // Iterate through each ItemGroup in the Project.  There are two.
            foreach (BuildItemGroup ig in project.ItemGroups)
            {
                BuildItem itemToRemove = null;

                // Iterate through each Item in the ItemGroup.
                foreach (BuildItem item in ig)
                {
                    // If the item's name is "RemoveThisItemPlease", then
                    // store a reference to this item in a local variable,
                    // so we can remove it later.
                    if (item.Name == "RemoveThisItemPlease")
                    {
                        itemToRemove = item;
                    }

                    // If the item's name is "EmbeddedResource" and it has a metadata Culture
                    // set to "fr-fr", then ...
                    if ((item.Name == "EmbeddedResource") && (item.GetMetadata("Culture") == "fr-fr"))
                    {
                        // Change the item's Include path to "FrenchStrings.fr.resx", 
                        // and add a new metadata Visiable="false".
                        item.Include = @"FrenchStrings.fr.resx";
                        item.SetMetadata("Visible", "false");
                    }
                }

                // Remove the item named "RemoveThisItemPlease" from the
                // ItemGroup
                if (itemToRemove != null)
                {
                    ig.RemoveItem(itemToRemove);
                }

                // For each ItemGroup that we found, add to the end of it
                // a new item Content with Include="SplashScreen.bmp".
                ig.AddNewItem("Content", "SplashScreen.bmp");
            }

            // The project now looks like this:
            //
            //     <?xml version="1.0" encoding="utf-16"?>
            //     <Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
            //       <ItemGroup>
            //         <Compile Include="Program.cs" />
            //         <Compile Include="Class1.cs" />
            //         <Content Include="SplashScreen.bmp" />
            //       </ItemGroup>
            //       <ItemGroup>
            //         <EmbeddedResource Include="FrenchStrings.fr.resx">
            //           <LogicalName>Strings.resources</LogicalName>
            //           <Culture>fr-fr</Culture>
            //           <Visible>false</Visible>
            //         </EmbeddedResource>
            //         <Content Include="SplashScreen.bmp" />
            //       </ItemGroup>
            //     </Project>
            //
            Console.WriteLine(project.Xml);
        }
    }
}

.NET Framework
Disponível desde 2.0

Quaisquer membros estáticos públicos ( Compartilhado no Visual Basic) desse tipo são thread-safe. Não há garantia de que qualquer membro de instância seja thread-safe.

Retornar ao início
Mostrar:
© 2016 Microsoft