Compartilhar via


ConfigurationElement Classe

Definição

Representa um elemento em um arquivo de configuração.

public ref class ConfigurationElement
public class ConfigurationElement
type ConfigurationElement = class
Public Class ConfigurationElement
Herança
ConfigurationElement
Derivado

Exemplos

O exemplo a seguir implementa vários dos métodos e propriedades da ConfigurationElement classe . Este exemplo obtém um ConfigurationSection objeto para a moduleProvider seção e obtém um ConfigurationElementCollection dessa seção. Este exemplo itera por meio de cada ConfigurationElement uma das coleções recuperadas.

[ModuleServiceMethod(PassThrough = true)]
public ArrayList GetElementCollection()
{
    // Use an ArrayList to transfer objects to the client.
    ArrayList arrayOfConfigPropertyBags = new ArrayList();

    ServerManager serverManager = new ServerManager();
    Configuration administrationConfig = serverManager.GetAdministrationConfiguration();
    ConfigurationSection moduleProvidersSection = 
        administrationConfig.GetSection("moduleProviders");
    ConfigurationElementCollection elementCollection = 
        moduleProvidersSection.GetCollection();
    // If there is a configuration element with the name of TestDemo(Modified), delete it.
    ConfigurationElement elementtoremove = null;
    foreach (ConfigurationElement moduleproviderelement in elementCollection)
    {
        if(moduleproviderelement.Attributes["name"].Value.ToString() == "TestDemo(Modified)")
        {
            elementtoremove = moduleproviderelement;
        }
    }
    if (elementtoremove != null)
    {
        elementCollection.Remove(elementtoremove);
    }
    foreach (ConfigurationElement moduleproviderelement in elementCollection)
    {
        PropertyBag elementBag = new PropertyBag();
        elementBag[ConfigurationDemoGlobals.SchemaName] = 
            moduleproviderelement.Schema.Name;
        elementBag[ConfigurationDemoGlobals.ElementTagName] = 
            moduleproviderelement.ElementTagName;
        ArrayList attributeArrayList = new ArrayList();
        // Loop through all attributes in the element attribute list.
        // Get the attribute name and value.
        foreach (ConfigurationAttribute attribute in moduleproviderelement.Attributes)
        {
            PropertyBag attributeBag = new PropertyBag();
            attributeBag[ConfigurationDemoGlobals.AttributeName] = attribute.Name;
            attributeBag[ConfigurationDemoGlobals.AttributeValue] = attribute.Value;
            // Change the value of the provider name "TestDemo" to "TestDemo(Modified)".
            if (attribute.Value.ToString() == "TestDemo")
            {
                // Use any of the following lines to set the attribute value.
                // attribute.Value = "TestDemo(Modified)";
                moduleproviderelement.SetAttributeValue(
                    "name", "TestDemo(Modified)");
                // moduleproviderelement["name"] = "TestDemo(Modified)";
                // Use any of the following lines to retrieve the attribute value.
                // attributeBag[ConfigurationDemoGlobals.AttributeName] = "name";
                attributeBag[ConfigurationDemoGlobals.AttributeName] =
                    moduleproviderelement.GetAttributeValue("name");
                // attributeBag[ConfigurationDemoGlobals.AttributeName] =
                //    moduleproviderelement["name"];
                // Set the element's lockItem attribute.
                moduleproviderelement.SetMetadata("lockItem", true); // persisted in Administration.config          

            }
            attributeArrayList.Add(attributeBag);
        }
        elementBag[ConfigurationDemoGlobals.AttributeArrayList] = attributeArrayList;
        arrayOfConfigPropertyBags.Add(elementBag);
    }
    // Create a new element. It must have a unique name.
    ConfigurationElement newelement;
    bool newelementexists = false;
    foreach (ConfigurationElement element in elementCollection)
    {
        if (element.Attributes["name"].Value.ToString() == "TestDemo")
        {
            newelementexists = true;
        }
    }
    if (!newelementexists)
    {
        newelement = elementCollection.CreateElement("add");
        newelement.Attributes["name"].Value = "TestDemo";
        newelement.Attributes["Type"].Value = "TestDemo.TestDemoModuleProvider, TestDemo, Version=1.0.0.0, Culture=neutral, PublicKeyToken=104f78e73dc54601";
        elementCollection.Add(newelement);
    }
    // CommitChanges to persist the changes to Administration.config.
    serverManager.CommitChanges();
    return arrayOfConfigPropertyBags;
}

Comentários

Essa é a classe base para muitas entidades de configuração, incluindo seções de configuração, entradas de coleção e elementos aninhados em uma seção.

Construtores

ConfigurationElement()

Inicializa uma nova instância da classe ConfigurationElement.

Propriedades

Attributes

Obtém uma coleção de atributos de configuração que contém a lista de atributos para esse elemento.

ChildElements

Obtém todos os elementos filho do elemento atual.

ElementTagName

Representa um elemento em um arquivo de configuração.

IsLocallyStored

Obtém um valor que indica se o elemento de configuração é armazenado em um arquivo de configuração específico.

Item[String]

Obtém ou define um atributo com o nome especificado.

Methods

Obtém uma coleção de métodos para o elemento de configuração.

RawAttributes

Representa um elemento em um arquivo de configuração.

Schema

Obtém o esquema do elemento atual.

Métodos

Delete()

Representa um elemento em um arquivo de configuração.

GetAttribute(String)

Retorna um ConfigurationAttribute objeto que representa o atributo solicitado.

GetAttributeValue(String)

Retorna o valor do atributo especificado.

GetChildElement(String)

Retorna um elemento filho que está sob o elemento de configuração atual e tem o nome especificado.

GetChildElement(String, Type)

Retorna um elemento filho que está sob o elemento de configuração atual e tem o nome e o tipo especificados.

GetCollection()

Retorna a coleção padrão para o elemento de configuração atual.

GetCollection(String)

Retorna todos os elementos de configuração que pertencem ao elemento de configuração atual.

GetCollection(String, Type)

Retorna o elemento de configuração que tem o nome e o tipo especificados e está sob o elemento de configuração atual.

GetCollection(Type)

Retorna o elemento de configuração que tem o tipo especificado e está sob o elemento de configuração atual.

GetMetadata(String)

Retorna valores de metadados do esquema do elemento.

SetAttributeValue(String, Object)

Define o valor do atributo especificado.

SetMetadata(String, Object)

Define valores de metadados do esquema de elemento.

Aplica-se a